正则表达式匹配单个字符(.、[]、\d、\D、\s、\S、\w、\W)
匹配单个字符:
代码 | 功能 |
---|---|
. | 匹配任意1个字符(除了\n) 【匹配\n时会报错】 |
[ ] | 匹配[ ]中列举的字符 【匹配[ ]中的任何一个字符】 |
\d | 匹配数字,即0-9 |
\D | 匹配非数字,即不是数字 |
\s | 匹配空白,即 空格,tab键 【都是空白】 |
\S | 匹配非空白 |
\w | 匹配非特殊字符,即a-z、A-Z、0-9、_、汉字 |
\W | 匹配特殊字符,即非字母、非数字、非汉字 【非下划线】 |
示例1: .
import reret = re.match(".","M")
print(ret.group())ret = re.match("t.o","too")
print(ret.group())ret = re.match("t.o","two")
print(ret.group())
运行结果:
示例2:[]
import re# 如果hello的首字符小写,那么正则表达式需要小写的h
ret = re.match("h", "hello Python")
print(ret.group())# 如果hello的首字符大写,那么正则表达式需要大写的H
ret = re.match("H", "Hello Python")
print(ret.group())# 大小写h都可以的情况
ret = re.match("[hH]", "hello Python")
print(ret.group())
ret = re.match("[hH]", "Hello Python")
print(ret.group())
ret = re.match("[hH]ello Python", "Hello Python")
print(ret.group())# 匹配0到9第一种写法
ret = re.match("[0123456789]Hello Python","7Hello Python")
print(ret.group())# 匹配0到9第二种写法
ret = re.match("[0-9]Hello Python", "7Hello Python")
print(ret.group())ret = re.match("[0-35-9]Hello Python", "7Hello Python")
print(ret.group())# 下面这个正则不能够匹配到数字4,因此ret为None
ret = re.match("[0-35-9]Hello Python", "4Hello Python") # 0~3,5~9分段,不包括4
# print(ret.group()) # 这样写直接会报错的
运行结果:
示例3:\d
import re# 普通的匹配方式
ret = re.match("嫦娥1号","嫦娥1号发射成功")
print(ret.group())ret = re.match("嫦娥2号","嫦娥2号发射成功")
print(ret.group())ret = re.match("嫦娥3号","嫦娥3号发射成功")
print(ret.group())# 使用\d进行匹配
ret = re.match("嫦娥\d号","嫦娥1号发射成功")
print(ret.group())ret = re.match("嫦娥\d号","嫦娥2号发射成功")
print(ret.group())ret = re.match("嫦娥\d号","嫦娥3号发射成功")
print(ret.group())
运行结果:
示例4:\D
import rematch_obj = re.match("\D", "a")
if match_obj:# 获取匹配结果print(match_obj.group())
else:print("匹配失败")
运行结果:
示例5:\s
import re# 空格属于空白字符
match_obj = re.match("hello\sworld", "hello world")
if match_obj:result = match_obj.group()print(result)
else:print("匹配失败")# \t 属于空白字符
match_obj = re.match("hello\sworld", "hello\tworld")
if match_obj:result = match_obj.group()print(result)
else:print("匹配失败")
运行结果:
示例6:\S
import rematch_obj = re.match("hello\Sworld", "hello&world")
if match_obj:result = match_obj.group()print(result)
else:print("匹配失败")match_obj = re.match("hello\Sworld", "hello$world")
if match_obj:result = match_obj.group()print(result)
else:print("匹配失败")
运行结果:
示例7:\w
import re# 匹配非特殊字符中的一位
match_obj = re.match("\w", "A")
if match_obj:# 获取匹配结果print(match_obj.group())
else:print("匹配失败")
执行结果:
示例8:\W
import re# 匹配特殊字符中的一位
match_obj = re.match("\W", "&")
if match_obj:# 获取匹配结果print(match_obj.group())
else:print("匹配失败")
执行结果:
正则表达式匹配单个字符(.、[]、\d、\D、\s、\S、\w、\W)相关推荐
- java 正则 单个字符_正则表达式教程之匹配单个字符详解
本文实例讲述了正则表达式教程之匹配单个字符.分享给大家供大家参考,具体如下: 注:在所有例子中正则表达式匹配结果包含在源文本中的[和]之间,有的例子会使用Java来实现,如果是java本身正则表达式的 ...
- 关于正则表达式匹配任意字符
关于正则表达式匹配任意字符 今天在Java中想使用正则表达式来获取一段文本中的任意字符.于是很随意得就写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现 ...
- java 匹配任意字符_正则表达式匹配任意字符(包括换行符)
正则表达式中,"."(点符号)匹配的是除了换行符"\n"以外的所有字符.但有时候我们需要匹配包括换行符在内的字符,经过一番搜索,发现了几种正则表达式匹配任意字符 ...
- php正则匹配任意字符串,正则表达式匹配任意字符(包括换行符)
正则表达式中,"."(点符号)匹配的是除了换行符"\n"以外的所有字符.但有时候我们需要匹配包括换行符在内的字符,经过一番搜索,发现了几种正则表达式匹配任意字符 ...
- Python中正则表达式对单个字符,多个字符,匹配边界等使用
Regular Expression,正则表达式,又称正规表示式.正规表示法.正则表达式.规则表达式.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或 ...
- java正则任意字符_正则表达式匹配任意字符(包括换行符)的写法
今天在Java中想使用正则表达式来获取一段文本中的任意字符.于是很随意得就写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现正则表达式中,". ...
- 正则表达式匹配任意字符
写代码的时候需要用到正则表达式匹配包含换行符(\n)在内的任意字符,然后就上菜鸟教程查了下正则表达式的写法,看到下面的内容: 菜鸟教程相应地址 使用下面代码 //当不存在换行\n换行符时,可以正常匹配 ...
- java使用正则表达式匹配中文字符
匹配中文正则表达式:[\u4e00-\u9fa5] 工具匹配测试: 多个中文字符匹配: 可以看到上图是只匹配到单个字符,若作多字符匹配可以在表达式后加上"+"或者是"{1 ...
- Python 正则表达式 匹配任意字符
.(句点)匹配除了换行之外的所有一个字符, .*(点-星)匹配除了换行外的所有字符 >>> >>> r=re.compile(r'.*') >>> ...
最新文章
- Benefits and limitations of genome-wide association studies GWAS--益处和局限性
- mysql数字字符串教程_很全面的mysql字符串函数的教程
- javaweb开发后端常用技术_Web后端开发(11)——Session会话技术
- spring声明事务与编程事务概述
- [css] 用CSS绘制一个红色的爱心
- c语言任意两个整数相减_大整数加减运算的C语言实现
- linux设置不同地址,ubuntu20.04设置静态ip地址(包括不同版本)
- Java — Arrays.toString(string[]) + Enumeration.hasMoreElements()【Arrays类、Enumeration接口】
- rj45管脚定义_RJ45接口定义
- parted 对nvme盘进行分区
- qlabel显示两行_PyQt5 系统化学习: QLabel
- android手机备份恢复出厂设置,安卓手机恢复出厂设置在哪里?史上最全版恢复过程详解...
- 单峰数组求峰值,二分思想,LeetCode862
- 金蝶erp系统服务器端,金蝶ERP软件二次开发.doc
- Google需警惕苹果Apple TV的10大原因
- 屏幕后期特效——Blood(角色死亡闪血)
- kali安装输入法【亲试可用】
- 围炉夜话——《雨霖铃·寒蝉凄切》赏析
- mysql 5.6 gtid mha_MySQL 5.6 GTID+MHA
- python五子棋代码_python实现五子棋小游戏
热门文章
- 阿里动物园再添新丁,小蛮驴搞定物流最后三公里
- 节后招人平均工资9000上热搜,为什么有些人去哪里都值钱?
- 马斯克发首款会上火星的电动皮卡:28万起,可防弹,造型相当“赛博朋克”...
- 谷歌开源张量网络库TensorNetwork,GPU处理提升100倍!
- 倒计时1天!「2019 Python开发者日」报名即将关闭(附参会提醒)
- 苹果裁员逾200人,拿无人驾驶“开刀”
- 公开课报名 | 那些年,我们在文本分类中遇到的坑
- 这些SpringBoot天生自带Buff工具类你都用过哪些?
- Maven官宣:干掉Maven和Gradle!推出更强更快更牛逼的新一代构建工具,炸裂!
- Nacos实现原理详解