概述
所谓的正则表达式指的是 正确的, 符合特定规则的式子 , 它是一门独立的语言, 并且能被兼容到绝大多数的编程语言
中. 在scala中, 可以很方便地使用正则表达式来匹配数据。具体如下:
- Scala中提供了 Regex类 来定义正则表达式.
- 要构造一个Regex对象,直接使用 String类的r方法 即可.
- 建议使用三个双引号来表示正则表达式,不然就得对正则中的反斜杠进行转义.
格式
val 正则对象名 = """具体的正则表达式""".r
具体的正则表达式组成:
. 表示任意字符
+ 数量词, 表示前边的字符出现至少1次, 至多无所谓.
@ 表示必须是@符号, 无特殊含义.
\. 因为.在正则中有特殊的含义, 所以要转移一下, 使它变成普通的.
注:使用findAllMatchln方法可以获取到所有正则匹配到的数组(字符串)
案例一:效验邮箱是否合法
需求
- 定义一个字符串, 表示邮箱.
- 定义一个正则表达式,来匹配邮箱是否合法.
- 合法邮箱测试:qq12344@163.com
- 不合法邮箱测试:qq12344@.com
- 打印结果.
object demo {
def main(args: Array[String]): Unit = {
//1. 定义一个字符串, 表示邮箱.
val email:String = "qq12344@163.com"
//2. 定义一个正则表达式,来匹配邮箱是否合法.
/*
. 表示任意字符
+ 数量词, 表示前边的字符出现至少1次, 至多无所谓.
@