正则表达式

简介: 正则表达式1.正则表达式的作用   1.1搜索指定模式的字符串   1.2验证字符串是否符合某种模式(比如,电话号码,邮件,密码等)   1.3替换字符串中指定模式的子字符串。适合用于批量替换一定规律的字符串2.

正则表达式

1.正则表达式的作用
  1.1搜索指定模式的字符串
  1.2验证字符串是否符合某种模式(比如,电话号码,邮件,密码等)
  1.3替换字符串中指定模式的子字符串。适合用于批量替换一定规律的字符串
2.正则表达式的基本定义
  2.1直接量字符
  \o    NUL字符(\u0000)
  \t    制表符(\u0009)
  \n   换行符(\u000A)
  \v   垂直制表符(\u000B)
  \f   换页符(\u000C)
  \r   回车符(\u000D)
  \xnn   由十六进制nn指定的拉丁字符,例如\x0A等价于\n
  \uxxx  由十六进制数xxxx指定的Unicode字符,例如\u0009等价于\t
  \cX     控制字符^X,例如,\cJ等价于换行符\n

  2.2字符类
  [...]          匹配方括号内的任意字符
  [^...]        匹配不在方括号内的任意字符
  .              匹配除换行符和其他Unicode行终止符之外的任意字符
  \w            匹配任何ASCII字符组成的单词,等价于[a-zA-Z0-9]
  \W           匹配任何不是ASCII字符组成的单词,等价于[^a-zA-Z0-9]
  \s            匹配任何Unidoce空白符
  \S           匹配任何非Unicode空白符的字符
  \d           匹配任何ASCII数字,等价于[0-9]
  \D           匹配任何非ASCII数字的字符,等价于[^0-9]
  [\b]        匹配退格直接量

  2.3重复字符语法
  {n,m}         匹配前一项至少n次,最多m次
  {n,}            匹配前一项至少n次
  {n}             匹配前一项n次
  ?                 匹配前一项0次或1次,等价于{0,1}
  +                匹配前一项1次或多次,等价于{1,}
  *                匹配前一项0次或多次,等价于{0,}

  2.4选择、分组、引用字符
  |        选择,匹配的是该符号左边的子表达式或右边的子表达式
  (...)       组合,将几个项组合为一个单元,这个单元可通过 * + ? | 等符号加以修饰,而且可以记住和这个组合相匹配的字符串以供此后的引用使用
  (?:...)      只组合,把项组合到一个单元,但不记忆与该组匹配的字符
  \n        和第n个分组第一次匹配的字符相匹配,组是圆括号中的子表达式
  2.5锚字符
  ^        匹配字符串的开头、在多行检索中,匹配一行的开头
  $       匹配字符串的结尾、在多行检索中,匹配一行的结尾
  \b      匹配一个单词的边界位置
  \B        匹配非单词边界的位置

3.正则表达式的应用例子

  常用的正则表达式 
  JS实现正则表达式 
  C#实现正则表达式

相关文章
|
JSON Rust 监控
公司电脑监控软件的Rust编程实现与安全性提升
这篇文章介绍了如何使用Rust编程语言开发一个基础的企业电脑监控软件,包括初始化项目、捕获键盘输入、监控网络活动。同时,文章强调了提升安全性的重要性,提出了数据加密(如AES)和完整性校验(如SHA-256)的方法,并展示了如何将监控数据自动提交到远程服务器。通过Rust,开发者能创建高效且安全的监控解决方案。
692 2
|
Web App开发 存储 编解码
【WebRTC原理探索】更进一步,核心组件RTP/RTCP数据传输协议
【WebRTC原理探索】更进一步,核心组件RTP/RTCP数据传输协议
863 0
|
Web App开发 安全 搜索推荐
双链笔记 Roam Research 综合评测、学习资源、使用教程分享
Roam Research 综合评测以及学习资源/使用教程分享 Roam Research 是最近几年,除了 Notion 以外,被广大笔记用户最为关注的产品。关于 Roam, 很多读者已经了解颇多。因此,对于 Roam 我只做简要评价,重点在于分享 Roam 使用所需要的学习资源和使用教程。
1024 0
双链笔记 Roam Research 综合评测、学习资源、使用教程分享
|
存储 分布式计算 算法
2022云栖精选—小图撬动大图:千亿规模用户群体网络的子图挖掘与应用
摘要:本文整理自阿里巴巴数据中台数据资产平台的何兴盛(河竹),在云栖大会“图计算及其应用”分论坛的分享。本篇内容主要分为四个部分: 1. 业务场景中的“大”图 2. 基于子图挖掘的设备识别解决方案 3. 离线子图采样系统Graph View 4. 总结
2022云栖精选—小图撬动大图:千亿规模用户群体网络的子图挖掘与应用
|
存储 C语言 C++
MAT文件打开方法汇总及其他操作
MAT文件打开方法汇总及其他操作
3173 0
|
Java 数据库 Oracle
告别迷茫!深入理解 Java 中的 ClassNotFoundException 和 NoClassDefFoundError 及排查技巧
本文深入解析 Java 中的 `ClassNotFoundException` 和 `NoClassDefFoundError`,帮助开发者告别迷茫。文章从两者的定义、发生场景、常见原因及排查技巧等方面进行详细讲解,并通过对比总结其核心区别。`ClassNotFoundException` 通常因类路径配置错误或类文件缺失导致,而 `NoClassDefFoundError` 则可能源于静态初始化失败或运行时依赖丢失。掌握这些知识,可有效解决 Java 程序中的常见运行时问题。文末附有实用参考资料,助力更深入学习。
484 0
告别迷茫!深入理解 Java 中的 ClassNotFoundException 和 NoClassDefFoundError 及排查技巧
|
机器学习/深度学习 人工智能 自然语言处理
Competition——AI:国内外人工智能比赛平台以及竞赛类型、竞赛题目、举行时间等之详细攻略(最全+ing)
Competition——AI:国内外人工智能比赛平台以及竞赛类型、竞赛题目、举行时间等之详细攻略(最全+ing)
Competition——AI:国内外人工智能比赛平台以及竞赛类型、竞赛题目、举行时间等之详细攻略(最全+ing)
|
数据库
vue+elementui中,el-select多选下拉列表中,如何同时获取:value和:label的值?
vue+elementui中,el-select多选下拉列表中,如何同时获取:value和:label的值?
1479 0
vue+elementui中,el-select多选下拉列表中,如何同时获取:value和:label的值?
|
数据可视化
带你读《Blockly创意趣味编程》之一:Blockly概述
Google Blockly作为一种可视化编程语言,通过类似拼图的方式构建出一个程序。本书配有丰富的案例、图片,对Blockly的基础知识、程序结构以及高级使用进行了详细的介绍。在每一章结束后都搭配一个游戏,帮助巩固本章知识,反思学习效果,更快速地上手Blockly编程。此外,每一章的课外拓展资料可以帮助了解计算机的发展。
|
机器人 API 数据可视化
云栖大会SaaS加速器专场 | 阿里云李立峰:阿里云RPA——领回您的机器人员工
导读:本文中,阿里云高级技术专家李立峰(花名:申峰)将聚焦阿里云RPA(机器人流程自动化)专业、智能、被集成的三大特点,讲述阿里云RPA在行业领域的应用场景。
3851 0
云栖大会SaaS加速器专场 | 阿里云李立峰:阿里云RPA——领回您的机器人员工

热门文章

最新文章

下一篇
开通oss服务