Autor | Zpráva | ||
---|---|---|---|
wwr Profil * |
#1 · Zasláno: 1. 12. 2013, 14:58:55
Ahoj, potřeboval bych pomoct s vytvářením regulárního výrazu.
Potřebuji v textu vyhledat řetězec abcd (jak v textu tak i na začátku či na konci), a pak nahradí danou sekvenci jiným textem. Pokud však před abcd bude escape znak \e (#27 / 1B) bude regulák sekvenci ignorovat. Využívám PHP: $out = preg_replace('/abcd/', 'ABCD', $out); Jak tam udělat to escapování? Předem děkuji za pomoc. |
||
Tori Profil |
#2 · Zasláno: 1. 12. 2013, 16:52:51
Hledejte "negative lookbehind assertion": http://cz2.php.net/manual/en/regexp.reference.assertions.php
|
||
wwr Profil * |
#3 · Zasláno: 1. 12. 2013, 17:19:47
vytvořil jsem regulární výraz:
'/[^'.chr(7).']title/' Jako escape znak jsem si zvolil místo ESC znak BEL. Ale tento regulák mi vynechá, pokud je hledaný řetězec na začátku řetězce. Pokud je hledaný znak uvnitř řetězce, tak odstraní i mezery okolo. Nevíte jakým způsobem regulák modifikovat do konečné fáze? |
||
Časová prodleva: 10 let
|
0