boolean istag = "dabainzhenhaoo".matches("^[a-zA-Z]\\w{5,19}");
System.out.println(istag);
String hong = "中国歌手出国前选拔赛金奖,同年在文化部等举办的歌唱\"孔繁森\"声乐作品赛获创作金奖、演唱金奖。从1996年开始为其它歌手担任词曲创作及制作工作,主要作品《晚安我的爱》,《中华民族》,《拥你一起飞》等,并先后为《隋唐演义》、《片儿警》、《野火春风斗古城》等电视剧演唱主题曲";
// 搜索
Pattern p = Pattern.compile("(?<=《).{3,7}(?=》)");
Matcher matcher = p.matcher(hong);
while (matcher.find()) {
String string = matcher.group();
System.out.print(string + " ");
}
// 替换
String deString = "我的电话17096670709 你的电话13513531234";
String newDes = deString.replaceAll("1[34785]\\d{9}", "电话");
System.out.println(newDes);
// 分割
String[] deStrings = deString.split("1[34578]\\d{9}");
System.out.println(Arrays.toString(deStrings));
// 时间类
Date date = new Date();
System.out.println(date);
// 计算两个时间的时间差
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy:MM:dd HH:mm:ss");
String string = "good good study, day day up";
String regex = "[a-z]{3,}\\b";
// 1, 将正则封装成对象。
Pattern pattern = Pattern.compile(regex);
// 2, 通过正则对象获取匹配器对象。
Matcher matcher = pattern.matcher(string);
// 3, 通过Matcher匹配器对象的方法对字符串进行操作。
System.out.println(matcher.matches());
// 要获取三个或以上字母组成的单词
// 使用Matcher对象的方法对字符串进行操作 --- find();
while (matcher.find()) {
System.out.println(matcher.group());// 获取匹配的子序列
}
[ ]方括号匹配方式,能够匹配方括号中任意一个字符
[ab5@] 匹配 "a" 或 "b" 或 "5" 或 "@"
[^ abc] 匹配 "a","b","c" 之外的任意一个字符
[f-k] 匹配 "f"~"k" 之间的任意一个字母
[^A-F0-3] 匹配 "A"~"F","0"~"3" 之外的任意一个字符
注意:^ 写到方括号内时表示取非的含义
\d 任意一个数字,0~9 中的任意一个
\w 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个
\s 包括空格、制表符、换行符等空白字符的其中任意一个
. 小数点可以匹配除了换行符(\n)以外 的任意一个字符
注意:区分大小写,大写是相反的意思
{n} 表达式重复n次
{m,n} 表达式至少重复m次,最多重复n次
{m,} 表达式至少重复m次
? 匹配表达式0次或者1次,相当于 {0,1}
+ 表达式至少出现1次,相当于 {1,}
* 表达式不出现或出现任意次,相当于 {0,}
String string = "https://www.ioser.com";
System.out.println(string.endsWith(".com"));
System.out.println(string.startsWith("www"));
//.需要用\\转义
String[] strings = string.split("\\.");
for (int i = 0; i < strings.length; i++) {
System.out.println(strings[i]);
}
System.out.println(Arrays.toString(strings));
//正则验证网址
boolean a = string.matches("^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP][sS]://)(([A-Za-z0-9-~]+).)+([A-Za-z0-9-~\\/])+$");
System.out.println(a);