gpt4 book ai didi

java - Java 正则表达式中的单词边界\b

转载 作者:行者123 更新时间:2023-12-04 11:37:40 25 4
gpt4 key购买 nike

我在使用 \b 作为 Java Regex 中的单词分隔符时遇到困难。

为了

text = "/* sql statement */ INSERT INTO someTable";

Pattern.compile("(?i)\binsert\b"); 找不到匹配项

Pattern insPtrn = Pattern.compile("\bINSERT\b"); 未找到匹配项

但是

Pattern insPtrn = Pattern.compile("INSERT"); 找到匹配项

知道我做错了什么吗?

最佳答案

在用 Java 编写正则表达式时,需要确保转义所有反斜杠,因此正则表达式 \bINSERT\b 变为 "\\bINSERT\\b" 作为 Java 字符串。

如果不对反斜杠进行转义,则字符串文字中的 \b 将被解释为退格字符。

关于java - Java 正则表达式中的单词边界\b,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12844167/

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