[英]How to replace all matches with Regex / PHP / preg_replace
基本上,我想替换所有单词,例如: test , someword , bleble 。
问题是我正在使用的正则表达式仅替换一个单词,第一个被找到。 有人可以帮我吗?
$string = 'http://nu/style/test/someword/bleble';
preg_replace('/(test|someword|bleble)/','',$string);
最好的问候,Mateusz
您可以使用数组来解决问题。
$string = "http://nu/style/test/someword/bleble";
$remove = array("/test/", "someword/", "bleble");
$result = str_replace($remove, ' ', $string);
您可以将array()
用于模式。 您需要一个阵列用于模式,可以将其替换,而另一个阵列用于替换。
$string = 'http://nu/style/test/someword/bleble';
$patterns = array(
"/test/",
"/someword/",
"/bleble/"
);
$replacements = array(
"",
"",
""
);
preg_replace($patterns, $replacements, $string);
当然,如果要用相同的单词替换所有$patterns
,则可以使用:
preg_replace($patterns, " ", $string);
输出:
http://nu/style///
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.