php preg_replace, замените якорь href, который не содержит этого ключевого слова - PullRequest
2 голосов
/ 27 мая 2010

HREF \ = \ "(. *) \"

это соответствует всем ссылкам, мне нужно, чтобы он применялся ко всем ссылкам, кроме случаев, когда href использует localhost в качестве ключевого слова

Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 ноября 2012

Я думаю, что это регулярное выражение делает то, что вы хотите:

href="(.*)localhost(.*)"
0 голосов
/ 17 декабря 2010

preg_replace("@href\\=\\\"((?:\\b[^l\\\"]|l[^o]|lo[^c]|loc[^a]|loca[^l]|local[^h]|localh[^o]|localho[^s]|localhos[^t]\\b)|[\\w&&[^\\\"]]+localhost|localhost[\\w&&[^\\\"]]+|[\\w&&[^\\\"]]+localhost[\\w&&[^\\\"]]+|[^l\\\"])+\\\"@", $replacement, $str)

...