Hirdetés
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Ágymatrac keresési kálvária
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- sh4d0w: Kalózkodás. Kalózkodás?
- Lalikiraly: Kaáli Autó-Motor Múzeum
- gban: Ingyen kellene, de tegnapra
- Brogyi: CTEK akkumulátor töltő és másolatai
- WireGuard VPN a mindennapokra
- sh4d0w: StarWars: Felismerés
Új hozzászólás Aktív témák
-
ngabor2
nagyúr
válasz
ngabor2
#1732
üzenetére
Alakulok, alakulok, de még messze vagyok még.
A pontos megoldássan beírt "Szociális Szövetkezet"-eket gond nélkül megtalálja a lenti szkript.
Viszont a hasonlók kigyűjtését legfeljebb elméletileg bírtam végigvinni, vagy úgy se.
Első részfeladathoz egy kis segítség magamnak:
#!/bin/bash
string="elem1 elem2 elem3"
hossz=$(echo $string| wc -w)
for i in $(seq $hossz)
do
echo $(echo $string | cut -d" " -f $i)
doneEz egy többszavas sorból egyenként adja vissza a szavakat (biztos van rá alapból egyszerűbb módszer
). Az utolsó előtti sor első echo-ja helyett mehetne az összehasonlítás. Ezt kell a Jester által írt progival összehasonlítani 4 szóval (mert a 2 szó lehet végig nagybetűvel is). Ahol egy sorban 2 db 0 van, azt a korábbi szkript is megtalálja. Ha egy 0 van benne, a többi nagy szám, az nekünk nem kell. Ha viszont van 2 kis szám (pl. 5 alatti, az egyik akár 0 is lehet), akkor az a szakasz kell.Ami nekem problémát okoz, hogy egyrészt oldalanként 50 darab 5 (pontosabban 7) soros szakasz 3. sorának egy részletét kell vizsgálni, és ha ott van 2 hasonló, de nem azonos szó, akkor azt a szakaszt változatlanul át kell másolni egy fájlba. És ez meg sok-sok oldalon keresztül...
Egy másik fórumtárstól kaptam egy awk szkriptet, amivel a html-ből kiszedi a sorokat:
awk '\
BEGIN { IGNORECASE = 1; output = ""; }\
/<td width="15" align="right" class="szoveg">/ { match($0, ">(.*?)<", a); output = a[1]; }
/<td width="60%" class="szoveg" align="left">/ { match($0, ">(.*?)<", a); output = output "; " a[1]; }
/<td align="center" class="szoveg">/ { match($0, ">(.*?)<", a); output = output "; " a[1]; }
/<td align="center" class="szoveg" width="120">/ { match($0, ">(.*?)<", a); output = output "; " a[1]; }
/--/ { match(output, ".*szociális.*szövetkez[^<]*", b); if ( b[0] != "" ) print b[0]; }
' szoc.txtEbből igazából csak a /<td width="60% kezdetű részre, meg a körítésre van szükség, és az ebben levő szavakat kell vizsgálni. Viszont hogy határozatlan mennyiségű számból hogyan lehet megállapítani, hogy van-e benne 2 db 5 alatti, az már nem az én súlycsoportom... meg úgy egy az egyben az egész.
IMHO lassan eljut ez a projekt arra a szintre, hogy nem egy szkript a legkézenfekvőbb megoldás erre.
Új hozzászólás Aktív témák
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- NFL és amerikai futball topik - Spoiler veszély!
- Még mindig várunk az új Mass Effectre – az N7 nap sem hozott áttörést
- Android alkalmazások - szoftver kibeszélő topik
- Budapest és környéke adok-veszek-beszélgetek
- Elektromos autók - motorok
- Parfüm topik
- Azonnali mobilos kérdések órája
- NASCAR
- CASIO órák kedvelők topicja!
- További aktív témák...
- Apple iPhone 12 Pro / 128GB / Kártyafüggetlen / 12Hó Garancia
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3067
- Lenovo ThinkPad P15 Gen 2 Mobile Workstation - i7-11850H 32GB 512GB Nvidia RTX A4000 8GB 1 év gar.
- Designer 4K Monitor - BenQ PD-2700-U
- Vállalom telefonok,tabletek javítását ,(szoftveres hibát is,frp lock-ot is)márkától fügetlenűl
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
). Az utolsó előtti sor első echo-ja helyett mehetne az összehasonlítás. Ezt kell a Jester által írt progival összehasonlítani 4 szóval (mert a 2 szó lehet végig nagybetűvel is). Ahol egy sorban 2 db 0 van, azt a korábbi szkript is megtalálja. Ha egy 0 van benne, a többi nagy szám, az nekünk nem kell. Ha viszont van 2 kis szám (pl. 5 alatti, az egyik akár 0 is lehet), akkor az a szakasz kell.
