gpt4 book ai didi

python - 在 Python 中排除正则表达式中的字符序列(不仅是单个字符)

转载 作者:太空宇宙 更新时间:2023-11-04 03:25:11 27 4
gpt4 key购买 nike

我有这种形式的表达式...

@@name<·parameters·>

...我想要一个匹配组 name 的正则表达式和 parameters .因为我有一组封闭的(和小的)值 name我更喜欢使用 for 循环来尝试所有的几个值,但是 parameters可以是任何东西……除了之外的任何东西和 ·> , 至极是打开和关闭参数集的顺序。

我找到了 this question我试过了...

@@(name)<·((?!(<·|·>).*))·>

...但我无法让它工作。我认为原因是排除表达式的位置和重复次数 (1) 是已知的,但在我的情况下,我想排除这两个序列中任何一个在未知长度字符串中的每次出现。

你知道怎么做吗?谢谢。

最佳答案

你的正则表达式必须是,

@@(name)<·((?:(?!<·|·>).)*)·>

负先行法。只看懂这部分(?!<·|·>).仅匹配任何字符()但不匹配 ·> , (?:(?!<·|·>).)*零次(星号)或更多次。

非贪心法。

@@(name)<·(.*?)·>

DEMO

关于python - 在 Python 中排除正则表达式中的字符序列(不仅是单个字符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33349801/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com