我想将"hello"
替换为"guys"
,除了图像src和alt与PHP(不区分大小写)。
这
Hello hello HELLO <img src="hello.jpg" alt="hello" />
我想要
Guys guys GUYS <img src="hello.jpg" alt="hello" />
或
guys guys guys <img src="hello.jpg" alt="hello" />
我尝试使用str_replace
,str_ireplace
,preg_replace
,但没有结果。
答案 0 :(得分:2)
如果你想要同时匹配两个hello以及alt =“和src =”,那么你可以对这两个使用“负向外观”。类似的东西:
$string = 'Hello hello HELLO <img src="hello.jpg" alt="hello" />';
preg_replace('/(?<!(src|alt)=")hello/i', 'guys', $string);
答案 1 :(得分:1)
您想要使用“负面前瞻”。这是我的概念证明代码。
<?php
$string = "Hello, hello, HELLO hello.jpg";
print preg_replace("/hello(?!.jpg)/i", 'Guys', $string);
打印
Guys, Guys, Guys hello.jpg