我有一个模式-像这样:
word1|some stuff word2|some stuff word3|some stuff
我想在单词之前添加@
字符,后面跟着管道(管道之前的单词是不同的)-得到这样的东西:
@word1|some stuff, @word2|some stuff @word3|some stuff
我该怎么做?
您可以使用:
$str = "word1|some stuff word2|some stuff word3|some stuff";
$result = preg_replace('/('w+'|)/', '@$1', $str);
//=> @word1|some stuff @word2|some stuff @word3|some stuff
<<h3> Regex演示/h3> 使用
$replaced = preg_replace('~'w+'|~', '@$0', $yourstring);
在演示中,看看底部的替换。
-
'w+
匹配单词字符 -
'|
匹配管道 -
@$0
用@
替换匹配,然后整体匹配$0