Scala中的正则表达式01

规则类型 具体规则 示例 说明
单字符 大多数字符匹配自身 正则表达式 abc,文本 abc a 匹配 a,b 匹配 b,c 匹配 c
方括号 定义字符集,匹配其一 [abc],文本 abc [abc] 匹配 a、b 或者 c
排除字符集 \^ \^ 开头加 ^,匹配排除字符 [^abc],文本 d [^abc] 匹配除 a、b、c 之外的字符,如 d
. 匹配除换行外单个字符 a.c,文本 abcadc . 可以匹配多种,只要中间是一字符即可
规则类型 具体规则 示例 说明
\d 等价0-9,匹配数字 \d(3),文本123、456 \d(3)匹配连续3个数字
\D 等价\^0-9,匹配非数字 \D+,文本abc \D+匹配至少一个非数字字符,如abc
\w 等价a-zA-Z0-9_,匹配相关字符 \w+,文本abc、abc123、abc_ \w+匹配对应字符串
\W 等价\^a-zA-Z0-9_,匹配其他 \W,文本& \W匹配非字母数字下划线字符,如&
\s 匹配空白字符 a\sb,文本ab a\sb匹配含空白字符的字符串
\S 匹配非空白字符 \S+,文本abc \S+匹配至少一个非空白字符,如abc
Scala 复制代码
object test {
  //正则表达式
  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到10中的任意一个
    // 4.1[^ab]:表示匹配一个字符,除a,b之外的
    // 5.{11}:表示前面的字符能出现11次
    val reg1 = "\\W".r
    // 6.脱字符 ^ 如果在正则的最前面,表示,要匹配的内容必须在字符串的开头
    // 7.脱字符 $ 如果在正则的最后边,表示,要匹配的内容必须在字符串的结尾
    // 8.英文的. : 表示了除了换行之外的其他的任意一个字符
    // 9. \d:表示0-9的一个数字
    // 10. \D:表示 除 \d 之外的字符
    // 11. \w: [a-zA-Z0-9_] 63个字符中任意一个。"一个字"
    // 12. \W:表示 除 \w 之外的字符
    // 13. \s:表示 空格
    // 14. \S:表示 除 \s 之外的字符
    //在如下字符串中 查找 满足正则表达式要求的内容
//    val str = "i am abc"
//    val rs = reg1.findFirstIn("i am abc abc")
//    if(!rs.isEmpty){
//      println("找到的是:",rs.get)
//    }
    //找全部的
    reg1.findAllIn("i am abc a!c a!!c 1 2 3 A _ -").toList.foreach(println)
  }
}
相关推荐
caimouse2 小时前
reactos编码规范
c语言·开发语言
xieliyu.6 小时前
Java算法精讲:双指针(三)
java·开发语言·算法
星辰徐哥6 小时前
Spring Boot 微服务架构设计与实现
spring boot·后端·微服务
星辰徐哥6 小时前
Spring Boot 数据导入导出与报表生成
spring boot·后端·ui
明夜之约6 小时前
Spring Boot 自动装配源码
java·spring boot·后端
Leaton Lee6 小时前
Spring Boot分层架构详解:从Controller到Service再到Mapper的完整流程
java·spring boot·后端·架构
Micro麦可乐6 小时前
Spring Boot 实战:从零设计一个短链系统(含完整代码与数据库设计)
数据库·spring boot·后端·哈希算法·雪花算法·短链系统
Jinkxs6 小时前
Resilience4j- 与 Spring Boot 快速集成:自动配置与基础注解使用
java·spring boot·后端
毕设源码_郑学姐6 小时前
计算机毕业设计springboot网络相册设计与实现 基于Spring Boot框架的在线相册管理系统开发与应用 Spring Boot驱动的网络影集设计与实践
spring boot·后端·课程设计
辣机小司6 小时前
【踩坑记录:Spring Boot 配置文件读取值不一致?警惕 YAML 的“八进制陷阱”与 SnakeYAML 版本之谜】
java·spring boot·后端·yaml·踩坑记录