今天刚刚看了String.match的用法,时间不长,代码不长,不过可以记录一下,方便大家
match()的参数一般为正则表达式,现在两个正则表达式,可以试用
正则表达式一:可以适用任何形式的字符串,
其中LikeType是要匹配的字符串,patten是生成的正则表达式,sourceStr是已有字符串,判断sourceStr是否满足LikeType的正则表达式
public static void main(String[] args) {
// TODO Auto-generated method stub
String likeType = "23";
String pattern = "[a-zA-Z0-9]*[" + likeType + "]{1}[a-zA-Z0-9]*";
String sourceStr = "adfjaslfj23ldfalsf";
System.out.println(sourceStr.matches(likeType));
}
正则表达式二:固定位置的字符串匹配,理解同上,只是正则表达式的不同
public static void main(String[] args) {
// TODO Auto-generated method stub
String likeType = "%%%23%%%*";
String sourceStr = "423236664";
likeType = likeType.replaceAll("%", "\\\\d").replaceAll("\\*", "\\\\d\\*");
System.out.println(likeType);
System.out.println(sourceStr.matches(likeType));
}
match的方法比较简单,但绝对实用,所以要掌握用法,正则表达式的写法尤其重要。
就这些吧,上面的代码可以直接使用,欢迎测试