package test_36
object 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}".r
reg.findAllIn("35623563892 123s4374822 19283746572 and 13823678212 are phone numbers ").toList.foreach(println)
}
}
正则表达式笔记
wjwjssjjs2024-12-06 11:42