phpbar.de logo

Mailinglisten-Archive

[php] preg_match() Anführungszeichen im Font

[php] preg_match() Anführungszeichen im Font

Sebastian Mendel lists at sebastianmendel.de
Mit Jun 22 16:10:29 CEST 2005


Tim Hildebrandt wrote:
> Hallo Sebastian,
> 
> 
>>> den Pattern so ausbauen, dass er das in ausgeschriebener Form so 
>>> interpretiert: Kein Zeichen oder ' oder "
>> ('|")?
> 
> 
> also ich hab's jetzt so gelöst:
> ^<font.*class\=['"]?autofield--(\S+)['"]?[^>]*>(.*)</font>$
> 
> 
> Allerdings ergibt sich hier noch das Problem, dass z.B. bei der
> Konstellation 
> 
> <font> Hallo Welt <font class="autofield--firstname">Irgendein Text</font>
> Text </font>
> 
> der äußere Font-Tag auch mit erwischt wird. Ich habe schon als Option U
> gesetzt, aber irgendwie scheint es nicht so richtig zu wollen. Wie kann ich
> die Verschachtelung ignorieren lassen und tatsächlich nur den inneren
> Font-Tag erwischen?

< und > gehört escaped
genauso wie ' und "

und du musst mehr eingrenzen:

\<font\s[^\>]*class\=[\'\"]?autofield--(\S+)[\'\"]?[^\>]*\>([^<]*)\<\/font\>

oder die ungreedy-option setzen

-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

php::bar PHP Wiki   -   Listenarchive