未知修饰符 '/' preg_replace()

Posted

技术标签:

【中文标题】未知修饰符 \'/\' preg_replace()【英文标题】:Unknown modifier '/' preg_replace()未知修饰符 '/' preg_replace() 【发布时间】:2014-04-13 21:20:26 【问题描述】:

我正在为自己制作 Twitter 供稿,但我被卡住了,我真的不知道如何解决这个问题。

错误: 警告:preg_replace() [function.preg-replace]: Unknown modifier '/'

代码:

$tweetText = preg_replace('/(http://|(www.\))(([^\s<]4,68)[^\s<]*)/', '<a href="http://$2$3" target="_blank">$1$2$4</a>', $tweetText);

【问题讨论】:

Why preg_replace throws me a "Unknown modifier" error?的可能重复 Warning: preg_replace(): Unknown modifier ']'的可能重复 【参考方案1】:

您正在 regexString (http://) 中使用您的分隔符。 请改用另一个分隔符(例如#)。

错误信息背后的解释:

preg_replace 认为您的字符串在http:// 的第一个斜杠处终止。由于修饰符在您的情况下为 / 的分隔符之后,因此它认为第二个斜杠必须是修饰符。没有修饰符 / - 所以它崩溃了

【讨论】:

现在我在使用 # 时遇到了这个错误。警告:preg_replace() [function.preg-replace]: Compilation failed: missing ) at offset 40 in 很高兴知道您尝试匹配的文本。例如,我在代码中看到(www.\),它可能应该是(www\.)。我不知道,直到我得到一个示例文本;) 你不能只在你的帖子上面添加一个简单的文字吗?这个链接太垃圾了。我仍然不知道应该更换哪些东西。看起来像链接 - 但哪一个?子域?没有子域? www 还是没有 www?请在您的帖子中添加一些示例链接! 哦 - 没有读到“它有效”。好吧 - 那么它很好^^。无论如何:添加示例链接时会更好地理解。其他人可以更好地解决问题。

以上是关于未知修饰符 '/' preg_replace()的主要内容,如果未能解决你的问题,请参考以下文章

警告:preg_replace():未知修饰符“g”

我在字符串上有几个 preg_replace 未知修饰符警告,但我不知道正则表达式修复 [重复]

警告:preg_replace():未知修饰符“h”

我的代码中的未知修饰符[重复]

替代函数 preg_replace e/ 修饰符

关于thinkhphp3.1中废弃 preg_replace /e 修饰符