Autor | Zpráva | ||
---|---|---|---|
aj Profil * |
#1 · Zasláno: 18. 10. 2009, 23:59:15
mam problem s reg vyrazov ktory je na viac riadkov....potrebujem aby vybral vsetky riadky v ktorych vo vnutry je slovo "kluc" (konretne v priklade druhy riadok v druhej bunke v title)
preg_match_all('/<tr color(.*)kluc(.*)<\/tr>/',$str,$vysledok); priklad co sa nachadza v $str <tr color="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf title="kluc" g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfaadf"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfdfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> co robilm zle? ako to ma byt? |
||
Alphard Profil |
#2 · Zasláno: 19. 10. 2009, 06:48:03
Doplňte PCRE_MULTILINE modifikátor (m).
|
||
Kcko Profil |
#3 · Zasláno: 19. 10. 2009, 08:25:27
Nikdy jsem moc nepochopil pouzivani modifikatoru "m". Ja pouzivam vzdy U/s/i a vysledek je stejny.
|
||
tiso Profil |
#4 · Zasláno: 19. 10. 2009, 09:44:22
Alphard ???
|
||
Joker Profil |
#5 · Zasláno: 19. 10. 2009, 09:54:29
Alphard:
Spíše "single line" modifikátor (s), řekl bych. Kcko: Ne že bych to někdy použil, ale co jsem četl, modifikátor "m" způsobí, že podmínce pro začátek a konec řetězce (^ a $) odpovídá i začátek a konec řádku. |
||
aj Profil * |
#6 · Zasláno: 19. 10. 2009, 11:50:50
m modifikator som skusal predtym nez som to sem pridal a nevratilo to nic...
s som skusal avsak to mi vratilo vsetky riadky (tr), ako subvyraz jedna vybralo od prveho tr az po kluc....a druhy subvyraz od kluca az po posledne /tr Array ( [0] => Array ( [0] => <tr color="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf title="kluc" g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfaadf"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfdfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> ) [1] => Array ( [0] => ="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf title=" ) [2] => Array ( [0] => " g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfaadf"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv </tr> <tr color="#dfdfad"> <td> tralalaa ae ar dfvydvb> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa asdfvae ar gdsgbds <b> f seg se<imgrf g= src "asf afga.,*S gsf</td> <td> tralalaa ae ar gdsgbds <b> f seg se<imgrf g=src "asf afga.,*S gsf</td> <td> tralalaa ae ar dfvfv ) ) takze stale to neslape dobre |
||
Kcko Profil |
#7 · Zasláno: 19. 10. 2009, 14:33:06
jako modifikatory pouzij Us
|
||
tiso Profil |
#8 · Zasláno: 19. 10. 2009, 16:24:56
Kcko to je síce pekné, ale nepôjde to...
aj A nepôjde to kvôli tomu 2x použitému (.*), ani rôzne kombinácie obmedzenia žravosti nepomáhajú. |
||
Alphard Profil |
#9 · Zasláno: 19. 10. 2009, 17:13:24
Kcko, tiso:
Díky za upozornění, ráno jsem to moc nepobral. Joker Ano. aj: Omlouvám se. |
||
Joker Profil |
#10 · Zasláno: 19. 10. 2009, 17:22:32 · Upravil/a: Joker
tiso:
„ani rôzne kombinácie obmedzenia žravosti nepomáhajú.“ Ne? Mně se zdá, že v líném režimu by to mělo jít... preg_match_all('/<tr color(.*?)kluc(.*?)<\/tr>/s',$str,$vysledok); Hlavně jde o to druhé (.*) (vyznačeno), podle popisu je problém s "nenasytností" právě tam. edit: jo a single-line, samozřejmě. |
||
tiso Profil |
#11 · Zasláno: 19. 10. 2009, 17:37:05
Joker tak si vyskúšaj že to nejde... Problém je že sa vráti prvý+druhý riadok, hoci text "kluc" obsahuje len druhý...
|
||
aj Profil * |
#12 · Zasláno: 19. 10. 2009, 18:52:15
Alphard: v pohode:)
joker: mne sa zda tiez ta cesta s /s ako spravna kedze tam mi aspon nieco vratilo...len to este nieje ono, nechapem preco si dal za * este aj otaznik, nevies ako tu nenasitnost poriesit? pripadne den dotaz zapisat inak aby fungoval? ak to niekto bude skusat moze tu http://warcraft3.yw.sk/reg/ hned to vrati vysledok na tom istom vyraze |
||
Časová prodleva: 3 dny
|
|||
aj Profil * |
#13 · Zasláno: 22. 10. 2009, 18:55:57
nikto nic?
|
||
Časová prodleva: 15 let
|
0