Java String正则匹配大小写问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java String正则匹配大小写问题相关的知识,希望对你有一定的参考价值。
例如
String str="aBakkKJkkk";
str.matches("^aba.*");
我现在想让它不匹分大小写的匹配,我该怎么写?java有没有模式修饰符可以使用?
str.matches("^(?i)aba.*");
(?i)表示后面的字符串都不区分大小写追问
哦,谢谢你,我记起来了,模式修饰符可以这样写,我以前学习php的,习惯了//i这种设置修饰符方式,忘记了用括号设置的方法,请问java有//i这种设置方法吗?
追答我没有用过你的这种写法,呵呵,
我写的那种更灵活一些
嗯,你这种写法我学习过,只是一时想不起来。
参考技术A 是不是也可以先把字符串转为小写再匹配,str.toLowCase().matches("^aba.*");追问这种方法我曾想过,但是我不要改变原数据。
参考技术B str.matches("(?i)^aba.*");java正则: 忽略大小写匹配
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import com.sun.org.apache.xerces.internal.impl.xpath.regex.CaseInsensitiveMap;
public class test {
public static void main(String[] args) {
String str = "java JavA ABC";
Pattern test_ = Pattern.compile("java",Pattern.CASE_INSENSITIVE);
Matcher result_ = test_.matcher(str);
str = result_.replaceAll("Perl6");
System.out.println(str);
}
}
以上是关于Java String正则匹配大小写问题的主要内容,如果未能解决你的问题,请参考以下文章