我想在我的 regexp 中使用正则表达式str_replace
,我想正确的解决方案是使用preg_replace
,但我不知道如何使用它。无论如何,如果它匹配或者在and之间有任何空格,我想src=
变成字符。通常只需打开 src= 它会是:a
src=
src
=
$string = str_replace('src=', 'a', $string);
但问题是当 src 和 = 之间有空格时,这将不起作用。这就是为什么我需要使用正则表达式。谢谢你的帮助。
$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*
涵盖零到无限的空格,@
只是模式所需的不同可能分隔符中的一个,i
(在最后一个分隔符之后)使模式不区分大小写。)
使用preg_replace
和以下模式:
src(?:\s+)?=
把它分开:
src
显然找到了“src”部分(?:\s+)?
找到 0 个或更多空间=
完成它,找到“=”总而言之,它将是:
$new_string = preg_replace("/src(?:\s+)?=/i", 'a', $string);
希望这可以帮助!