regex - 使用正则表达式从同一行中的多个引号中查找包含特定单词的引号
问题描述
如果我在同一行中有不同的引号,如何使用正则表达式找到包含特定单词的引号?例如,如果我有这 3 行:
“MacOs 很好”“Linux 很好”。
“MacOs 很糟糕”“Linux 很糟糕”。
“MacOs 是完美的”“Linux 是完美的”。
如何获得包含 Linux 的引号,这意味着:
“Linux 很好”
“Linux 很糟糕”
“Linux 是完美的”
解决方案
您可以使用以下正则表达式模式:
"[^"]*\bLinux\b[^"]*"
演示
正则表达式的解释:
" match opening double quote
[^"]* zero or more content before Linux
\bLinux\b match Linux
[^"]* zero or more content after Linux
" closing double quote
请注意,我的回答假设您的输入文本只有适当的平衡双引号。如果不是,那么我的回答可能会引发一些误报。
推荐阅读
- c++ - 名称对或元组值的别名引用
- ios - usdz 文件的 SCNSceneSource 标识符为空
- mysql - 如何获取mysql中两个表之间的比较差异列值
- python - 部分覆盖 numpy 数组不起作用
- java - 使用 Vector 在视图中画线(在 Android Studio 中)
- reactjs - 如何在 react.js 中从另一个组件调用不同组件的 ComponentDidMount()
- php - 如何通过 ajax 显示带有树枝的变量?
- python - 在 Beautifulsoup 中添加标签、文本和链接组合的简单方法?
- c++ - boost::spirit 和 strict_real_policies 无法解析太长的整数
- python - pysmt z3求解器崩溃?