新桥网站建设培训,网站二级导航,网站注册账号,仿土巴兔网站建设object test03 {//正则表达式def main(args: Array[String]): Unit {//定义一个正则表达式//1.[ab]:表示匹配一个字符#xff0c;或者是a#xff0c;或者是b//2.[a-z]:表示从a到z的26个字母中的任意一个//3.[A-Z]:表示从A到Z的26个字母中的任意一个//4.[0-9]:表示从0到9的10… object test03 {//正则表达式def main(args: Array[String]): Unit {//定义一个正则表达式//1.[ab]:表示匹配一个字符或者是a或者是b//2.[a-z]:表示从a到z的26个字母中的任意一个//3.[A-Z]:表示从A到Z的26个字母中的任意一个//4.[0-9]:表示从0到9的10个数字中的任意一个//4.1[^ab]:表示匹配一个字符除a,b之外的//5.[11]:表示前面的字符能出现11次
// val reg1[0-9]{11}.r
// val reg1[ab].r
// val reg1a.c.r
// val reg1\\d.r
// val reg1\\d{3,6}.r //贪婪模式
// val reg1\\d{3,6}.r //非贪婪模式//6.脱字符 ^ 如果在正则的最前面表示要匹配的内容必须在字符串的开头//7.脱字符 $ 如果在正则的最后边表示要匹配的内容必须在字符串的结尾//8.英文的 .:表示除了换行之外的其他的任意一个字符//9. \d:表示 0-9 的一个数字//10. \D:表示 除了 \d之外 的字符//11. \w:表示[a-zAz-Z0-9_] 63个字符中任意一个”一个字“//12. \W:表示 除了 \w之外 的字符//13. \s:表示空格//14: \S:表示 除了 \s之外 的字符//15. 量词//15.1 *: 表示 0//15.2 : 表示 1//15.3 ?: 表示 0次或1次//15.4 {11}: 表示 恰好11次//15.5 {3,5}: 表示 至少3次最多5次//15.6 {3,}: 表示 至少3次最多不限//贪婪模式//正则匹配默认是贪婪模式的//16. ? 非贪婪模式加在量词后面//在如下字符串中 查找 满足正则表达式要求的内容
// val str i am abc//找到第一个满足条件的
// val rsreg1.findFirstIn(i am abc abc)
// if (!rs.isEmpty){
// println(找到的是,rs.get)
// }//找全部的
// reg1.findAllIn(13612343314).toList.foreach(println)
// reg1.findAllIn(i am abc abc).toList.foreach(println)
// reg1.findAllIn(i am abc a!c a!!c).toList.foreach(println)
// reg1.findAllIn(i am abc a!c a!!c 1 2 3).toList.foreach(println)
// reg1.findAllIn(136123456781).toList.foreach(println) //贪婪
// reg1.findAllIn(136123456781).toList.foreach(println) //非贪婪//正则查找//找全部的手机号//规则//1.11位数字//2.第一个数字是1//3.第二个数字是3—9的数
// val reg1 1[3-9]\\d{9}.r
// reg1.findAllIn(136123456781 and 13838765432 01812345678 1181212345678 are phone numbers).toList.foreach(println) //正则查找//验证 给定字符串是否符合正则表达式的要求//用户名的规则//1. 长度在 6-12 位//2. 只能以字母开头//3. 只能包含如下4种字母数字下划线#val name1_56!!.com//不符合val name2abc//不符合val name3admin123#val reg2[a-zA-Z][a-zA-Z0-9_#]{5,11}.r//matches: 验证字符串是否满足println(reg2.matches(name1))println(reg2.matches(name2))println(reg2.matches(name3))println(reg2.matches(a12312313131313131313))//应用替换//要求把手机号的4-7位换成xxx//(136) (1234) (5678)
// val reg11[3-9]\\d{9}.rval reg1(1[3-9]\\d)(\\d{3})(\\d{5}).rval str13812345678 and 13987654321 are phone numbersval newStrreg1.replaceAllIn(str,m{
// println(m.group(1))
// println(m.group(2))
// println(m.group(3))m.group(1) ### m.group(3)})println(newStr)}
}