php - 正则表达式排除以符号“]”开头的单词
问题描述
现在我有正则表达式,它只从内容中捕获单词
/\b(word1|word2|word3)\b/i
它非常简单并且可以工作,但是我有一个不应该触发的案例。当 word 在 wordpress 简码中时
[语音]word1[/语音]
在这种情况下,不需要触发正则表达式。我试过[^\]]\b(word1|word2|word3)\b
了,但它占用了额外的空间。检查https://regex101.com/r/KdEvbN/1
我花了大约 2 个小时,现在我讨厌正则表达式。帮我出去。谢谢
解决方案
尝试像这样消极地看待背后:
(?<!])\b(word1|word2|word3)\b
推荐阅读
- python - 在 luigi 中,函数 requires 和 @requires 标记有什么区别?
- javascript - 使用可点击的缩略图分享视频链接
- blazor - Blazor 服务器端,无需强制重新加载的错误处理?
- domain-driven-design - 如何处理 DDD/CQRS 中的硬聚合范围约束?
- laravel - Laravel mix - 为每个条目设置不同的插件选项
- visual-studio-code - Visual Studio Code“从 Microsoft 设置同步”与“从 Shan Khan 设置同步”
- reactjs - 带有 React Quill 和 Firebase Firestore 的评论回复系统
- python - 使用 pybind11 导出到 python 的类函数的额外打印
- sas - 将 PROC MEANS 的结果保存在工作表中
- javascript - 如何在滚动行未结束时修复列?