我想在str_replace
中使用regexp,我想正确的解决方案是使用preg_replace
,但我不知道如何使用它。不管怎样,我想把src=
变成字符a
,如果它与src=
匹配,或者如果它在src
和=
之间有任何空格。通常情况下,只要打开src=就会是:
$string = str_replace('src=', 'a', $string);
但问题是,当src和=之间有空格时,这是不起作用的。这就是为什么我需要使用regexp。谢谢你的帮助。
$string = preg_replace('/src's*=/i', 'a', $string);
RegEx的意思是"匹配src,后跟0个或多个空格,后跟="。
preg_replace的工作原理与str_replace:相同
$new_string = preg_replace($pattern, $replacement, $old_string);
在您的情况下,模式将是"@src's*=@i"
('s*
覆盖零到无限的空白,@
只是模式所需的不同可能delimitter中的一个,i
(在最后一个分隔符之后)使模式不区分大小写。)
使用preg_replace
和以下模式:
src(?:'s+)?=
拆分:
src
显然找到了"src"部分(?:'s+)?
找到0个或更多空间=
完成,找到"="
因此,总的来说,它将是:
$new_string = preg_replace("/src(?:'s+)?=/i", 'a', $string);
希望这能有所帮助!