我发现了多篇带有负面前瞻性的帖子,但我似乎无法让它适用于这个特定的用例。我有多行具有以下 4 种模式之一(可能超过 2 个选项):text [option1/option2] text
text] [option1/option2] more text
text [option1/option2] [text
text] [option1/option2] [text寻找一个正则表达式(更可能是多个:一个用于左侧,一个用于右侧),它只匹配单括号文本(下面以粗体显示):文本 [选项 1/选项 2] 文本文本] [option1/option2] 更多文本文本 [选项 1/选项 2] [文本文本] [选项1/选项2] [文本多次通过线路是可以的。另外,这是 Python,所以如果有完全不同的方法,我愿意接受建议。这只是列表中的字符串。提前致谢-mS
3 回答
慕运维8079593
TA贡献1876条经验 获得超5个赞
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
看起来你正在尝试匹配这个。
不过,环视断言需要什么?
(text\] (?:\[option1/option2\])(?: \[text)?|(?:\[option1/option2\]) \[text)
=
(
text \] [ ]
(?: \[ option1/option2 \] )
(?: [ ] \[ text )?
| (?: \[ option1/option2 \] )
[ ] \[ text
)
见 https://regex101.com/r/HxY4Uv/1
您可以将捕获组包装在 3 种形式周围以查看哪些匹配,
这样您就不必发布处理字符串。
(text\]) (?:\[option1/option2\]) (\[text)?|(?:\[option1/option2\]) (\[text)
见https://regex101.com/r/CqzZID/1
添加回答
举报
0/150
提交
取消