gpt4 book ai didi

java - 如何为正则表达式组绑定(bind) +/* ?

转载 作者:行者123 更新时间:2023-12-02 07:42:47 24 4
gpt4 key购买 nike

假设我有正则表达式:

(CC|NP)*

因此,它会在 Java 的先行正则表达式中产生问题。我该如何写才能避免这些问题?我想将其重写为:

(CC|NP){1,9}

Testing on regexr it seems like the upperbound is ignored completely.在 Java 中,这些量词 {} 似乎仅适用于非组正则表达式元素,如下所示:

\w+\[\S{1,9}\]

最佳答案

抱歉,后视模式通常对子模式有限制。参见 f.x。 Why doesn't finite repetition in lookbehind work in some flavors?p 。或者在网络上搜索“lookbehind 模式限制”。

您可以尝试将后视模式的所有固定长度变体写为交替模式。但这可能有很多...

您还可以通过正常匹配内部模式来模拟lookbehind,并对您的实际目标进行匹配和分组:(?:CC|NP)*(.*)

关于java - 如何为正则表达式组绑定(bind) +/* ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11365159/

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