关于正则表达式的语法: http://blog.csdn.net/qq_34838643/article/details/58603851
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Regex {
public static void main(String[] args) {
//matchDemo();
//splitDemo();
//replaceDemo();
getDemo();
}
// 1..匹配
public static void matchDemo(){
String mail = "nc970728@gmail.com";
String regex = "[0-9a-zA-Z]{3,8}@gmail.com";
System.out.println(mail.matches(regex));
}
// 2..切割
public static void splitDemo(){
String str = "faffhgrrrtj";
String regex = "(.)\\1+"; //根据叠词切割
String[] arr = str.split(regex);
for (String sub : arr) {
System.out.println(sub);
}
}
// 3..替换
public static void replaceDemo(){
String str = "faffhgrrrtj";
String regex = "(.)\\1+";
System.out.println(str.replaceAll(regex,"$1")); //fafhgrtj
}
// 4..获取
public static void getDemo(){
String mail = "faffhgrrrtj";
String regex = "(.)\\1+";
//将规则封装成对象
Pattern p = Pattern.compile(regex);
//将正则对象和要作用的字符串相关联,获取匹配器对象
Matcher m = p.matcher(mail);
while(m.find())
{
System.out.println(m.group());
System.out.println(m.start()+"---"+m.end());
}
//System.out.println(m.matches());
}
}