1

我的任务是查找和替换以“#”开头和结尾的单词。

示例 - 我的字符串将如下所示:

#performer1# 举起双手,#event# 举起双手。

我期望的输出是:

#performer1#举起双手,# event#举起双手。

我对php中的正则表达式一无所知,而且我是初学者,有人可以帮忙吗?

4

1 回答 1

2

正如您已经建议的那样,preg_replace 函数应该可以解决问题。您现在需要的是这样的正则表达式

$string = "Put your hands up in the air for #performer#, ...";
$pattern = "/#(\w+)#/";
$replacement = '<strong>$1</strong>';
$new_string = preg_replace($pattern, $replacement, $string);

魔术位是$pattern您指定要查找的内容的变量。如果将括号括起来,则可以引用$replacement变量中的实际内容。

\w+基本上说:匹配尽可能多的字符(并且至少一个)是a-z,A-Z或.0-9_

PHP PCRE 模式语法可以为您提供更多关于如何使用正则表达式的提示。

于 2013-08-01T08:41:00.857 回答