利用正则表达式对字符串进行替换
public static void main(String[] args) {
String str = "小红13012341111,小绿15122221234";
String regex = "(1\\d{2})(\\d{4})(\\d{4})";//分成三组
str = str.replaceAll(regex, "$1****$3");//保留第一组和第三组
System.out.println(str);
}
利用正则表达式对字符串进行匹配
public static void main(String[] args) {
String emial = "[email protected]";
String regex = "\\d{4,11}@qq.com";//超出位数就返回false
boolean matches = emial.matches(regex);
System.out.println(matches);//true
}
利用正则表达式对字符串进行分隔
public static void main(String[] args) {
String str = "C:\\资源\\日韩\\片片.avi";
String regex = ":?\\\\";// 意思就是 :\\ 或者 \\,这就不会输出":"
String[] split = str.split(regex);
for (String element : split) {
System.out.println(element);
}
}
利用正则表达式对字符串进行爬虫
public static void main(String[] args) {
String str = "<img src='hhy/aaa.jpg'/><div><div/> <input type='image' src='submit.gif' /><img src='bbb.jpg'/>";
/**
* <img src='hhy/aaa.jpg'/> //获取图片资源,就认准img,src后面就是图片的路径
* <div><div/>
* <input type='image' src='submit.gif' />
* <img src='bbb.jpg'/> //获取图片资源,就认准img
*/
String regex = "<img\\b[^>]*\\bsrc\\b\\s*=\\s*('|\")?([^'\"\n\r\f>]+(\\.jpg|\\.bmp|\\.eps|\\.gif|\\.mif|\\.miff|\\.png|\\.tif|\\.tiff|\\.svg|\\.wmf|\\.jpe|\\.jpeg|\\.dib|\\.ico|\\.tga|\\.cut|\\.pic)\\b)[^>]*>";
//正则表达式对象
Pattern pattern = Pattern.compile(regex);
//获取匹配结果对象
Matcher matcher = pattern.matcher(str);
//判断是否有匹配结果
while(matcher.find()){
//获取匹配结果
String group = matcher.group(2);//获取第二组的数据(第二个空格里的数据)
System.out.println(group);
}
}
标签:regex,String,正则表达式,matcher,str,main
From: https://blog.51cto.com/u_16154651/6449699