有没有办法在java忽略字母大小写中应用regexp?

Rom*_*man 2 java regex string

简单的例子:我们有字符串"Some sample string Of Text".我想过滤掉所有停用词(即"some"和"of"),但我不想改变应该保留的其他词的字母大小写.

如果信件不重要我会这样做:

str.toLowerCase().replaceAll ("a|the|of|some|any", "");
Run Code Online (Sandbox Code Playgroud)

在java中是否存在带有正则表达式的"忽略大小写"解决方案?

Tom*_*lak 5

您可以使用内联不区分大小写的修饰符:

str.replaceAll ("(?i)a|the|of|some|any", "");
Run Code Online (Sandbox Code Playgroud)

  • 你也可以做部分不区分大小写IIRC`"(?i:a)bc"`相当于(在我的Locale中)"[aA] bc" (2认同)
  • @Esko:因为我知道*你会这样做,所以我等了.;-) (2认同)