学习java正则表达式的都知道,它的重要性;但同时也了解它的难度和复杂性。所以为了加深我们对它的了解。我举了几个例子:
例子1、
查找以Java开头,任意结尾的字符串
Pattern pattern = Pattern.compile("[Java].*");
Matcher matcher = pattern.matcher("Java不是人");
boolean b= matcher.matches();
//当条件满足时,将返回true,否则返回false
System.out.println(b);
例子2、
以多条件分割字符串时
pattern = Pattern.compile("[, |]+");
String[] strs = pattern.split("Java Hello World Java,Hello,,World|Sun");
for (int i=0;i<strs.length;i++)
System.out.println(strs[i]);
例子3、
文字替换(首次出现字符)
pattern = Pattern.compile("正则表达式");
matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");
//替换第一个符合正则的数据
System.out.println(matcher.replaceFirst("Java"));
例子4、
文字替换(全部)
pattern = Pattern.compile("正则表达式");
matcher = pattern.matcher("正则表达式 Hello World,正则表达式 Hello World");
//替换第一个符合正则的数据
System.out.println(matcher.replaceAll("Java"));
例子5、
验证是否为邮箱地址
String str="1637651551@qq.com";
String rule= "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
pattern = Pattern.compile(rule);
matcher = pattern.matcher(str);
System.out.println(matcher.matches());
例子6、
验证是否是网页地址
str="www.hao123.cn";
rule="w{3}.*.(com|cn)";
pattern = Pattern.compile(rule);
matcher = pattern.matcher(str);
System.out.println(matcher.matches());
来源:oschina
链接:https://my.oschina.net/u/563549/blog/64316