正则表达式,避免[Y](X)模式中的嵌套括号

时间:2017-09-14 23:35:44

标签: regex brackets

我使用正则表达式来查找和替换看起来像这种模式的部分文本:

[Y](X)

其中X和Y是不同的短语, 并且搜索过程仅基于X

以下模式可以完成这项工作,但它会替换更多文本 当有嵌套括号

\[.*\]\(X\)

e.g。

[ZZZ [Y](X)

文字示例:

  

[表皮](表皮(皮肤))(皮肤的最外层)和外层真皮(表皮下面的层)。接触性皮炎导致大的,燃烧的和发痒的皮疹。这些可能需要几天到几周才能愈合。这使它与接触性荨麻疹区别开来 -

如何修复我的正则表达式以避免这种情况?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,你想要使用积极向前看,如:

在此示例中:

  

[表皮](表皮(皮肤))

你做了类似的事情:

<强> \[[^\[\]]*?\](?=\(Epidermis \(skin\)\))