如果找到特定字符,我想替换字符 例如我的文字具有以下值:
$text = "@abc hi there!! @jkl,@xyz how are you?";
这里我要替换所有以'@'开头的单词,输出应该像
$text = "<a href='abc'>@abc</a> hi there!! <a href='jkl>@jkl</a>,<a href='xyz'>@xyz</a> how are you?";
单词可以用空格或逗号分隔(有/没有空格)。我想将"@abc"
替换为"<a href='abc'>@abc</a>"
。
提前致谢
答案 0 :(得分:0)
使用正则表达式:
$str = preg_replace("/@(\w+)/", "<a href='$1'>@$1</a>", $text);
请注意,\w+
位于括号中,导致其被捕获。另请注意,使用不同语言的字符会失败(无法在@שלום上使用)。
答案 1 :(得分:-1)
$text = preg_replace('/@(\w+)/',"<a href='$1'>@$1</a>",$text);