当前位置: 首页 > news >正文

正则学习笔记

正则匹配字符串就是解析字符串的特征,然后用正则的语言把它表达出来。

推荐两个我使用的文档和工具:

正则表达式入门教程
正则表达式在线测试工具

位置(断言)

\b      匹配单词的开始或结束
^       匹配字符串(行)的开始
$       匹配字符串(行)的结束

字符

.       匹配除换行符(\n)以外的任意字符
\w      匹配字母数字下划线或汉字
\s      匹配任意的空白符    
\d      匹配数字
\n      匹配换行
\r      匹配回车

数量

'*'      匹配零次或多次
'+'      匹配一次或多次
'?'      匹配零次或一次
{n}      重复n次
{n,}     重复n到n+次
{n,m}    重复n到m次

字符类

[character_group]           匹配character_group中任何的单个字符
[^character_group]          匹配不在character_group中的任何单个字符
[first-last]                匹配从第一个到最后一个的范围中的任何单个字符

分组

(exp)               匹配exp,并捕获文本到一个从 1 开始的序号中
(?<name>exp)        匹配exp,并捕获文本到name命名组中
(?:exp)             匹配exp,不捕获,不分配

(?=exp)             零宽度正预测先行断言,匹配exp前面的位置
(?!exp)             零宽度负预测先行断言,匹配后面跟的不是exp的位置
(?<=exp)            零宽度正回顾后发断言,匹配exp后面的位置
(?<!exp)            零宽度负回顾后发断言,匹配前面不是exp的位置

(?>exp)             非回溯(也称为“贪婪”)子表达式

反向引用

\num                后向引用。匹配编号子表达式的值
\k<name>            命名后向引用。匹配命名表达式的值。

选项

i      不区分大小写
m      多行模式(一行相当于一个字符串)
s      单行模式(多行相当于一行)

相关文章:

  • 注解
  • 堆和栈的区别(转过无数次的文章)
  • 我的Python成长之路---第七天---Python基础(21)---2016年2月27日(晴)
  • 进度条2
  • [Unity] Unity3D研究院编辑器之独立Inspector属性
  • 递归案例:汉诺塔问题
  • 三大家族轻松管理CentOS 7网络属性配置
  • 顺序表
  • PSD解析工具实现(二)
  • 细谈asp.net如何处理应用程序-----c#菜鸟日记
  • 如何通过热修复,搞定开发中的那些 Bug?
  • redis 的setnx命令
  • HTML5实战与剖析之媒体元素(6、视频实例)
  • Excel实用操作
  • glance镜像元数据
  • 【剑指offer】让抽象问题具体化
  • 2017-09-12 前端日报
  • DOM的那些事
  • Facebook AccountKit 接入的坑点
  • Flex布局到底解决了什么问题
  • leetcode46 Permutation 排列组合
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • React系列之 Redux 架构模式
  • SpriteKit 技巧之添加背景图片
  • WebSocket使用
  • 构建二叉树进行数值数组的去重及优化
  • 欢迎参加第二届中国游戏开发者大会
  • 记一次和乔布斯合作最难忘的经历
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 力扣(LeetCode)21
  • 走向全栈之MongoDB的使用
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • #Spring-boot高级
  • (C语言)字符分类函数
  • (LeetCode) T14. Longest Common Prefix
  • (MATLAB)第五章-矩阵运算
  • (超详细)语音信号处理之特征提取
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (实战篇)如何缓存数据
  • (一)基于IDEA的JAVA基础12
  • (译) 函数式 JS #1:简介
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET 8.0 发布到 IIS
  • .NET Core 项目指定SDK版本
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET牛人应该知道些什么(2):中级.NET开发人员
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • @kafkalistener消费不到消息_消息队列对战之RabbitMq 大战 kafka
  • @NoArgsConstructor和@AllArgsConstructor,@Builder
  • @RequestMapping-占位符映射