gpt4 book ai didi

java - 阻止正则表达式跨行匹配

转载 作者:行者123 更新时间:2023-12-02 08:45:40 26 4
gpt4 key购买 nike

我有一个正则表达式,

end\\s+[a-zA-Z]{1}[a-zA-Z_0-9]

应该与规范匹配的行

end abcdef123

其中 abcdef123 必须以字母和后续字母数字字符开头。

但是目前它也与此匹配

foobar barfooend
bar fred bob

它会在 barfooend 末尾拾取 end,并且还会拾取 bar 实际上返回 end bar > 作为合法结果。

我试过了

^end\\s+[a-zA-Z]{1}[a-zA-Z_0-9]

但这似乎根本不起作用。它最终什么也不匹配。它应该相当简单,但我似乎无法把它说出来。

最佳答案

\s 还包括换行符。因此,您要么需要指定一个仅包含所需空白字符的字符类,要么排除不需要的空白字符。

使用其中之一代替 \\s+:

关于java - 阻止正则表达式跨行匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18852647/

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