(一)正则表达式的定义
正则表达式(Regular Expression)是一种用于匹配、查找和替换文本中特定模式的字符串。
package reg
/*
* 1.什么是正则表达式
* 正则表达式是一种用来匹配字符串的强大工具,它由普通字符(例如字符 a 到 z)和特殊字符(称为"元字符")组成
* 2.使用步骤
* (1)定义一个正则表达式 "".r
* (2)调用正则表达式的相关方法
*
* 3.规则
* (1) \d 表示一个数字
* (2) \d{4} 表示四个数字 {n} 量词 ,让前面的规则重复n次
*/
object reg01 {
def main(args: Array[String]): Unit = {
//定义一个正则表达式
val reg = "\d{4}".r //五个相邻的数字
//1.匹配。在目标字符中,把符合正则表达式要求内容,找出来
val source = "067891 one 2 two 3 4 5"
reg.findAllIn(source).foreach(println)
//2 验证。检查给定目标字符串,是否符合正则表达式的要求
//reg.matches()
}
}
package reg
/*
* 1.什么是正则表达式
* 正则表达式是一种用来匹配字符串的强大工具,它由普通字符(例如字符 a 到 z)和特殊字符(称为"元字符")组成
* 2.使用步骤
* (1)定义一个正则表达式 "".r
* (2)调用正则表达式的相关方法
* (3)\d{4}表示
*
* 3.规则
* (1) \d 表示一个数字
* (2) \b表示便捷,空格,或者是最开始
* (3) \d{4} 表示四个数字 {n} 量词 ,让前面的规则重复n次
* (4) [],表示其中任意一个字符,[3578]就是4个数组中的一个,[3-9]就是3456789中的某一个 [a-z]就是26个字母中的某一个
*/
object reg02 {
def main(args: Array[String]): Unit = {
//定义一个正则表达式
val reg = "\b1[3578]\d{9}".r // 1的后面跟着3,5,7,8,后面再跟着9个相邻的数字
//1.匹配。在目标字符中,把符合正则表达式要求内容,找出来
val source = "1a912345678 15612345678 10612345678,13812345678"
reg.findAllIn(source).foreach(println)
//2 验证。检查给定目标字符串,是否符合正则表达式的要求
//reg.matches()
}
}
1. 匹配一个数字。\d
2. 匹配两个数字。\d\d
3. 匹配11个数字。\d{11}
4. 匹配11个数字,并且以1开头。1\d{10}
5. 只能匹配11个数字,不能多也不能少。^1\d{10}$
6. 第2位可以是3,5,6,7,8,9。^1[356789]\d{9}$
package reg
/*
* 1.什么是正则表达式
* 正则表达式是一种用来匹配字符串的强大工具,它由普通字符(例如字符 a 到 z)和特殊字符(称为"元字符")组成
* 2.使用步骤
* (1)定义一个正则表达式 "".r
* (2)调用正则表达式的相关方法
*
* 3.规则
* (1) \d 表示一个数字
* (2) \b表示便捷,空格,或者是最开始
* (3) \d{4} 表示四个数字 {n} 量词 ,让前面的规则重复n次
* (4) [],表示其中任意一个字符,[3578]就是4个数组中的一个,[3-9]就是3456789中的某一个 [a-z]就是26个字母中的某一个
* (5)^表示开始
* (6) 表示结束
* */
object reg03 {
def main(args: Array[String]): Unit = {
//定义一个正则表达式
val reg = "^1[3578]\d{9}".r // 1的后面跟着3,5,7,8,后面再跟着9个相邻的数字
println(reg.matches("13512345678"))
println(reg.matches("12412345678"))
println(reg.matches("15612345678"))
println(reg.matches("15712345678"))
}
}