首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java RegEx是不区分大小写的吗?

Java RegEx是不区分大小写的吗?
EN

Stack Overflow用户
提问于 2010-08-09 05:21:09
回答 4查看 165.5K关注 0票数 129

在Java语言中,当执行replaceAll来查找正则表达式模式时,如下所示:

代码语言:javascript
复制
replaceAll("\\?i\\b(\\w+)\\b(\\s+\\1)+\\b", "$1"); 

(为了删除重复的连续大小写不敏感的单词,例如测试测试),我不确定我把?i放在哪里了。我读到它应该在开头,但如果我把它拿出来,我就会捕捉到重复的连续单词(例如test test),但不是大小写不敏感的单词(例如Test test)。所以我想我可以在一开始添加?i,但这似乎没有完成工作。有什么想法吗?谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-09 05:25:39

RegexBuddy告诉我,如果你想在开头包含它,这是正确的语法:

代码语言:javascript
复制
"(?i)\\b(\\w+)\\b(\\s+\\1)+\\b"
票数 141
EN

Stack Overflow用户

发布于 2014-10-03 05:30:55

您还可以匹配不区分大小写的正则表达式,并使用Pattern.CASE_INSENSITIVE常量使其更具可读性,如下所示:

代码语言:javascript
复制
Pattern mypattern = Pattern.compile(MYREGEX, Pattern.CASE_INSENSITIVE);
Matcher mymatcher= mypattern.matcher(mystring);
票数 190
EN

Stack Overflow用户

发布于 2010-08-09 05:24:18

如果您的整个表达式不区分大小写,则只需指定CASE_INSENSITIVE标志:

代码语言:javascript
复制
Pattern.compile(regexp, Pattern.CASE_INSENSITIVE)
票数 43
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3436118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档