字符串支持正则表达式方法一:
boolean matches(String regex)“使用给定的正则表达式验证当前字符串是否符合格式要求,符合则返回true。
需要注意:无论给定的正则表达式是否指定边界匹配(^...$)都是做完全匹配验证的。
public class MatchesDemo {
public static void main(String[] args) {
String email="648991372@qq.com";
boolean result=email.matches("\\w+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+");
if (result) {
System.out.println("是邮箱");
}else {
System.out.println("不是邮箱");
}
}
}
字符串支持正则表达式方法二:
String[] split(String regex):将当前字符串中按照满足正则表达式的部分进行拆分,并将拆分出的每部分以一个字符串数组的形式返回。
public class SplitDemo {
public static void main(String[] args) {
String string="abc123@def456@ghi";
String[]strings=string.split("[0-9]+");
String[]strings1=string.split("@+");
System.out.println(Arrays.toString(strings));
/**
* 如果连续匹配了两次要拆分的内容时,中间会拆分
* 出一个空字符串,但是空字符串末尾连续匹配则所
* 有拆分出的空字符串都会被忽略
*/
//[abc, @def, @ghi]
System.out.println(Arrays.toString(strings1));
//[abc123, def456, ghi]
}
}
字符串支持正则表达式方法三:
String replaceAll(String regex,String str):将当前字符串中满足正则表达式的部分替换为给定字符串。
public class ReplaceAllDemo {
public static void main(String[] args) {
String string="abc123def456ghi";
/**将当前字符串的数字部分替换为"#NUMBER"*/
string=string.replaceAll("\\d+", "#");
System.out.println(string);
}
}