Autor | Zpráva | ||
---|---|---|---|
Ofi Profil |
#1 · Zasláno: 10. 7. 2010, 21:37:33 · Upravil/a: Ofi
podívejte se na tento regExp:
"~([\"\']%)?.*(%[\'\"])?~" 1)pořád mi nefunguje udělat tuto část .* tak aby obsahovala úplně vše kromě znaku %, zkoušel jsem negaci ale pořád mi to nefunguje... 2) lze udělat podmíněný regulární výraz? a tím mám namysli například, pokud budem vycházet z měho regExpu: pokud na začátku nebude "% tak MUSÍ BÝT NA KONCI %" PRÁVĚ JEDNOU ale pokud se na začátku objeví "% na konci být %" NEMUSÍ!!! jen tak pro doplnění, regexp by měl brát např toto: "%slovo" nebo '%slovo%' nebo "slovo%" ale i "%slo_.,vo" ale už NE TOTO "slovo" předem děkuji... |
||
Majkl578 Profil |
#2 · Zasláno: 10. 7. 2010, 21:50:33
Myslím, že tvým požadavkům by měl odpovídat tento regulár:
'~^(["\'])(%[^%]+%?|%?[^%]+%)\\1$~' "%foo' .
|
||
Ofi Profil |
#3 · Zasláno: 10. 7. 2010, 21:54:46 · Upravil/a: Ofi
reaguji na Majkla578:
díky... add) moje chyba ale regExpu by mělo též vyhovovat např toto: 'blabla "%slovo"', čili bude mi to fungovat pokud odstraním metaznaky ^ a $ ? add) vysvětlil bys mi prosím ten regexp, nebo aspoň ty podmínky aby to pro mě také mělo nějaký přínos a pro lidi co budou na foru takové téma vyhledávat? děkuji edit: aha tak už to chápu.. :D díky :) jen mě mátlo to množdtví % :) |
||
Majkl578 Profil |
#4 · Zasláno: 10. 7. 2010, 22:02:42
Ofi:
„moje chyba ale regExpu by mělo též vyhovovat např toto: 'blabla "%slovo"', čili bude mi to fungovat pokud odstraním metaznaky ^ a $ ?“ Pokud přidáš modifikátor U, tak ano. „vysvětlil bys mi prosím ten regexp, nebo aspoň ty podmínky aby to pro mě také mělo nějaký přínos a pro lidi co budou na foru takové téma vyhledávat?“ \\1 je zpětná reference, [^%] znamená všechny znaky kromě vybraných, | je jako or.
|
||
Ofi Profil |
#5 · Zasláno: 10. 7. 2010, 22:09:03
reaguji na Majkl578a:
„Pokud přidáš modifikátor U, tak ano.“ a ten znamená? :) jinak díky moc :) |
||
Majkl578 Profil |
#6 · Zasláno: 10. 7. 2010, 22:12:50
Ofi:
„a ten znamená? :)“ Manuál neznáme? U = ungreedy. Zkus si to sám otestovat. |
||
Ofi Profil |
#7 · Zasláno: 10. 7. 2010, 22:20:03
reaguji na Majkla578:
„Manuál neznáme? U = ungreedy. Zkus si to sám otestovat.“ známe, ale z toho jsem to moc nepobral, a když jsem to testnul tak mi to vycházelo naprosto stejně ... |
||
Majkl578 Profil |
#8 · Zasláno: 10. 7. 2010, 22:30:38
Ano, ale pokud zkusíš na toto:
var_dump(preg_match_all('~(["\'])(%[^%]+%?|%?[^%]+%)\\1~', 'blabla "%slovo" blabla "%slxovo" blabla "%sslovo"', $m), $m); |
||
Ofi Profil |
#9 · Zasláno: 10. 7. 2010, 22:38:39
reaguji na Majkla578:
aha, proto jsem to neviděl, protože ve svém použití řeším pouze první výskyt :) okej díky :) teď už chápu :) |
||
Časová prodleva: 14 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0