Pattern p = Pattern.compile("ab"); ab 代表a出现一次到多次 后面跟个b Pattern.compile()方法获取正则表达式
Matcher m = p.matcher("aaaaab"); 调用方法matcher()传入一个字符串 返回一个Matcher 对象 获取匹配器
boolean b = m.matches(); 匹配器里面的 m.matches()方法,判断是否匹配 返回布尔类型
等同于:syso("aaab".matches("a*b"));
去除字符串中的空格\t、回车\n、换行符\r、制表符\t
public class StringUtils {
public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile("\\s*|\\t|\\r|\\n");
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}
public static void main(String[] args) {
System.out.println(StringUtils.replaceBlank("just do it!"));
}
/*-----------------------------------
笨方法:String s = "你要去除的字符串";
1.去除空格:s = s.replace('\\s','');
2.去除回车:s = s.replace('\n','');
这样也可以把空格和回车去掉,其他也可以照这样做。
注:\n 回车(\u000a)
\t 水平制表符(\u0009)
\s 空格(\u0008)
\r 换行(\u000d)*/
}
需求:把一个字符串中的手机号码获取出来
String s = "我的手机号码是:15555555555,曾经用过16688774488,还用过:17744859686";
String regex = "1[3-9]\\d{9}"; 手机号码正则表达式
Pattern p = Pattern.compile("regex ");
Matcher m = p.matcher(s);
while(m.find){
syso(m.group()); 循环,获取到这个字符串中所有的手机号
}
boolean b = m.find() 从这个字符串中开始匹配,匹配到有手机号码的 返回true
String s11 = m.group(); 从这个字符串中获取到手机号
网友评论