【问题标题】:Find specific word outside square brackets?在方括号外查找特定单词?
【发布时间】:2011-08-31 17:07:19
【问题描述】:

我有以下文本块

Word1 
Word2 
Word3 
Word4 [Hello world Word1] 

我需要一个正则表达式来在括号外找到 Word1 - 但不在括号内我可以用正则表达式来做到这一点吗?

谢谢罗伯

【问题讨论】:

    标签: regex


    【解决方案1】:

    这个问题引发了一些关于括号嵌套的问题。我可以编写一个适用于[...]...[..][...] 的正则表达式,但是[[[][]][]] 呢?我不知道您使用的是什么语言,但如果它支持递归正则表达式,请使用:/\[([^[]|(?R))*?\]/。您需要删除与此正则表达式匹配的任何内容,然后使用标准搜索功能搜索您需要的单词。

    正则表达式解释:

    \[       // opening bracket
      (      // start group
      [^[]   // any character, but not opening bracket
      |      // or
      (?R)   // another nested bracket group
      )*?     // zero or more of this group, lazy
    \]       // closing bracket
    

    例子:

    【讨论】:

    • 我们没有使用 MS WORD 通配符的递归 reg ex 和 im :( - 我如何在括号外找到一个特定的词而不是所有的词
    猜你喜欢
    • 2016-11-12
    • 2021-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-06
    • 1970-01-01
    • 2014-10-30
    • 1970-01-01
    相关资源
    最近更新 更多