1.什么是正则表达式?
正则表达式是具有特殊规则的字符串,也就是该字符串的内容不同,所表示的规范也不同。常常用于对一些复杂字符串的匹配、查找和替换等操作。
2.正则表达式的含义及用法?
部分正则表达式的含义如下:
[abc] //abc中任意一个字符
[^abc] //除了abc之外的任意字符
[a-z] //a-z中任意一个字符
[a-zA-Z0-9] //任意一个
[a-z&&[^bc]] //a-z中除了bc之外的任意一个字符
x? //表示0个或1个x
x* //表示0个或任意多个x
x{n} //表示n个x
x+ //表示1个到任意多个x
x{n,} //表示n个到任意多个x
x{n,m} //表示n个到m个x
() //表示分组
···
正则表达式的用法如下:
matches方法,将字符串与正则表达式进行匹配,成功则返回true
String regex1="[0-9]{9}@qq.com"; //qq邮箱的匹配
String s1="888888888@qq.com";
System.out.println(s1.matches(regex1));//true
split方法,将字符串按照给定的正则表达式进行切割成字符串数组
String regex2="[a-z]{2}";
String s2="13a3ab349acb3";
System.out.println("s2.split(regex2)");//13a3 349 b3
replaceAll方法,将符合正则表达式的部分替换为给定的字符串
String regex3="\\d"; //任意一个数字字符,转义
String s3="ab3c4d";
System.out.println(s3.replaceAll(regex3,"k"));
...
3.正则表达式常用于哪些场景?
正则表达式使用比较常见,用户注册时账号密码的合法性验证、从用户页面输入的字符串中提取有效的字符串信息等...