package test_36object test4 {def main(args: Array[String]): Unit = {// 定义一个规则 正则表达式//val reg = "[a-zA-Z0-9]".r//1. .表示 除了换行之外的其他的任意单个字符//2. \d 等于[0-9] 匹配一个数字 digit//3.\D 除了\d之外的其他的任意字符。表示非数字//4. \w 等价于[0-9A-Za-z_] 63个字符, 表示一个字 word//5. \W 除了\w之外的任意字符。 表示非字//6. \s 表示一个空格 space//7. \S 表示一个非空格// val reg =".".r // val reg = "\\W".r// 量词//1.{n,m} 把前面的字符匹配最少n次,最多m次//2.{n,} 把前面的字符匹配最少n次,最多不限//3.{n} 把前面的字符匹配n次//4. ? ===>{0,1} 把前面的字符匹配0次 或者1次//5. + ===>{1,} 把前面的字符匹配最少1次//6. * ===>{0,} 把前面的字符匹配0次 或者多次//1. 查找。在目标字符中,找到符合正规表达式规则要求的 子串 // val rs = reg.findFirstIn("abc") // if(!rs.isEmpty){ // println("你找到的,符合正则表达式要求的内容是",rs.get) // }// 规则1. 有11个数字//规则2: 开头是1//规则3: 第二位是3-9的数字var reg ="1[3-9]\\d{9}".rreg.findAllIn("35623563892 123s4374822 19283746572 and 13823678212 are phone numbers ").toList.foreach(println)} }