1

所以我有这个我正在研究的类似评论的系统,显然我并没有完全考虑到它,但是我暂时和可预见的未来暂时无法使用我的方法。那就是说。

我目前正在使用

$pattern = '/\[@(\w+):(.*)\]/';
$subject = '[@keyword:string]';
preg_match($pattern, $subject, $matches);

从特定模式类型中查找特定信息。这是某种程度的东西[@keyword:string],这很好用。然而,在我想出这种方法的搜索中,我没有意识到我正在使用它的字符串还包含其他内容,例如评论。所以整个字符串看起来像 '[@keyword:string]
Hello World`

上面的代码将为我转储一个数组,第一项是我正在寻找的实际匹配项,下一个是关键字,下一个是字符串。这很棒,因为我将它用于其他用途。然而。就像我说的那样,我从来没有补偿过<br>Hello World part。我需要做的是与上述非常相似的事情。但只留下<br>Hello World部分作为可重复使用的字符串,因为我打算重新加入 2 个字符串。在我的过程完成后。除了,在这种情况下完成后的过程是用匹配的用户名或基于关键字的图像替换我正在寻找的模式,然后调度一个函数来查找正确的名称,或者为图片。这很好,我得到了那部分,它只是从字符串中剥离模式,所以当我得到名称或图像时,我可以将它重新加入字符串。

希望这是有道理的。

4

1 回答 1

0

使用以下模式之一:

'/\[@(\w+):(.*?)\]/'

'/\[@(\w+):(.*)\]/U'

注意:PCRE_UNGREEDY

于 2012-10-07T04:16:36.780 回答