Autor | Zpráva | ||
---|---|---|---|
Martinek Profil * |
Ahoj můžete mi prosím poradit regulární výraz, který vybere text před a za * (hvězdičkou)?
Pomocí file_get_contents načítám data ze souboru a zjišťuji jestli je tam *. $hledam = '*'; $kod = file_get_contents('./test.txt' , true); if (strpos(' '.$kod, $hledam) != FALSE) { echo '* tam je.'; } else { echo '* tam neni.'; } A potřeboval bych regulární výraz, který bych dal na řádek 5 a ten by mi vypsal celé slovo včetně hvězdičky. Př.: V text.txt mám toto: Lenka, monika, verka a pavla, která je*ale neumí plavat. Chtěl bych vypsal je*ale. Snad je to pochopitelné. Děkuji za pomoc. |
||
Seith Profil |
#2 · Zasláno: 5. 3. 2011, 09:14:45 · Upravil/a: Seith
Tohle by mělo být řešení tvého problému. Fce preg_match hledá pouze první shodu, poté ukončuje hledání. Pokud by jsi chtěl vyhledat všechny výskyty slov s hvězdičkou, použij preg_match_all - kde nalezené výskyty budeš mít v poli $matches.
$regex = '/\S*\*\S*/'; $kod = file_get_contents('./test.txt' , true); if(preg_match($regex, $kod, $matches)){ echo $matches[0]; }else{ echo '* tam neni.'; } |
||
Časová prodleva: 13 let
|
0