gpt4 book ai didi

java - 拒绝前导/结尾非字母数字字符的字边界

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

现在我正在学习 Java 上的正则表达式,我有一个关于单词边界的问题。因此,当我在 Java 正则表达式上寻找单词边界时,我得到了这个\b ,它接受由非单词字符边框的单词,所以这个正则表达式\b123\b将接受此字符串 123 456 但会拒绝 456123456。现在我发现像 !$@#@%123^^%$#"123" 这样的词仍然被上面的正则表达式接受。是否有任何单词边界/模式拒绝像上面的示例一样以非字母数字(空格除外)为边界的单词?

最佳答案

您想使用\s 而不是\b。这将查找空白字符而不是单词边界。

但是,如果您希望 123 456 的第一个示例能够匹配,那么您还需要使用 anchor 在立即开始或结束时接受 123字符串的。这可以通过(\s|^)123(\s|$)来完成。克拉 ^ 匹配字符串的开头,$ 匹配字符串的结尾。

关于java - 拒绝前导/结尾非字母数字字符的字边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15320104/

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