如果外部匹配,则正则表达式选择内部

时间:2019-01-25 08:13:03

标签: c# .net regex

要找到有关正则表达式的具体答案很棘手,因此,如果是重新发布,我感到抱歉。

正如标题所述,如果其余字符串匹配,则需要获取方括号之间的字符串值。 在我的情况下,特别是十六进制。

例如,这应输出A35并忽略0。

  

一棵树上有[A35]只猫和0只老虎。

但这根本不匹配:

  

一棵树上有[A35]狗和0只老虎。

到目前为止,我已经得到:

There are \[[a-fA-F0-9]+\]+ cats and 0 tigers in a tree.

使用第二个正则表达式获取[]之间的值。

\[(?s)(.*)\]

哪种方法有效,但我怀疑这是最有效的方法。尝试将这两者以及我尝试的其他任何方式结合在一起,似乎会导致模式错误。

0 个答案:

没有答案