正则用法

本文快速介绍了正则表达式的常用元素,包括特殊字符、重复次数限定等基本概念,并通过实例展示了如何正确使用这些元素进行字符串匹配。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/d  匹配任何十进制数;它相当于类 [0-9]。
/D  匹配任何非数字字符;它相当于类 [^0-9]。
/s  匹配任何空白字符;它相当于类  [ /t/n/r/f/v]。
/S  匹配任何非空白字符;它相当于类 [^ /t/n/r/f/v]。
/w  匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]。
/W  匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]。

 

/b是正则表达式规定的一个特殊代码(好吧,某些人叫它元字符,metacharacter),代表着单词的开头或结尾,也就是单词的分界处。虽然通常英文的单词是由空格,标点符号或者换行来分隔的,但是/b并不匹配这些单词分隔字符中的任何一个,它只匹配一个位置

 

.是一个元字符,匹配除了换行符以外的任意字符

 

/d{2}-/d{8}。 这里/d后面的{2}({8})的意思是前面/d必须连续重复匹配2次(8次)

{2,}重复2或更多次

 

 

{5,12}和前面介绍过的{2}是类似的,只不过{2}匹配只能不多不少重复2次{5,12}则是重复的次数不能少于5次,不能多于12次,否则都不匹配。

 

^匹配字符串的开始

$匹配字符串的结束

有些正则表达式处理工具还有一个处理多行的选项。如果选中了这个选项,^$的意义就变成了匹配行的开始处和结束处

 

如果你想查找元字符本身的话,比如你查找.,或者*,就出现了问题:你没办法指定它们,因为它们会被解释成别的意思。这时你就得使用/来取消这些字符的特殊意义。因此,你应该使用/./*。当然,要查找/本身,你也得用//.

例如:unibetter/.com匹配unibetter.comC://Windows匹配C:/Windows

 

 在字符串前加个 "r" 反斜杠就不会被任何特殊方式处理,所以 r"/n" 就是包含"/" 和 "n" 的两个字符,而 "/n" 则是一个字符,表示一个换行。正则表达式通常在 Python 代码中都是用这种 raw 字符串表示。

常规字符串Raw 字符串
"ab*"r"ab*"
"////section"r"//section"
"//w+//s+//1"r"/w+/s+/1"

正则表达式30分钟入门http://www.cnblogs.com/deerchao/archive/2006/08/24/zhengzhe30fengzhongjiaocheng.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值