java正则表达式对字符串的操作

 学习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="[email protected]";
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());

你可能感兴趣的:(java,Pattern)