正则表达式入门之使用元字符
正则表达式—使用元字符
1. 使用元字符
1.1对特殊字符转义
在元字符前加上反斜杠就可以对其进行转义:转义序列\.将匹配.本身,转义序列\[将匹配[本身。
每个元字符都可以通过给他加上一个反斜杠前缀的方法来转义,如此得到的转义序列将匹配那个字符本身而不是它特殊的元字符含义。
例1
#文本
var myAarray = new Array();
...
if (myArray[0] == 0) {
...
}
#正则表达式
myArray\[0\]
#结果
var myAarray = new Array();
...
if (myArray[0]== 0) {
...
}
如果我们想查找的不仅仅是myArray[0]还包括myArray[1]、myArray[2]之类[]中包含数组元素0到9的,我们可以构造如下正则表达式:
myArray\[[0-9]\]
如果我们想把包含反斜杠(\)的路径文件中所有的反斜杠找出,就需要对\进行转义,否则会出错。
例2
#文本
C:\Users\admin\Desktop\python_for_work\spyder_worker
#正则表达式
\\
#结果
C:\Users\admin\Desktop\python_for_work\spyder_worker
1.2匹配空白字符
在进行正则表达式搜索时,我们经常会遇到需要对原始文本里的非打印空白字符进行匹配的情况,
这类字符很难被直接输入到一个正则表达式中,但我们可以使用下表中列出的特殊元字符来输入他们。
[\b] |
回退(并删除)一个字符 |
\f |
换页符 |
\n |
换行符 |
\r |
回车符 |
\t |
制表符 |
\v |
垂直制表符 |
1.3匹配特定的字符类别
字符集合是最常见的匹配形式,而一些常用的字符集合可以用特殊的元字符来代替,这些元字符匹配的是某一类别的字符。
\d |
任何一个数字字符,等价于[0-9] |
\D |
任何一个非数字字符,等价于[^0-9] |
\w |
任何一个字母数字字符(大小均可)或下划线字符,等价于[A-Za-z0-9_] |
\W |
任何一个非字母数字字符或下划线字符,等价于[^A-Za-z0-9_] |
\s |
任何一个空白字符,等价于[\f\n\r\t\v] |
\S |
任何一个非空白字符,等价于[^\f\n\r\t\v] |
例1
#文本
1121
A1S2D3
12374
G3H2J3
K1K1K1
GHJKUH
#正则表达式
\w\d\w\d\w\d
#结果
1121
A1S2D3
12374
G3H2J3
K1K1K1
GHJKUH
1.4使用POSIX字符类
POSIX字符类是许多(但不是所有)正则表达式实现都支持的一种简写形式。
[:digit:] |
任何数字,等价于[0-9] |
[:xdigit:] |
任何十六进制数字,等价于[a-Fa-f0-9] |
[:alpha:] |
任何字母,等价于[A-Za-z] |
[:lower:] |
任何小写字母,等价于[a-z] |
[:upper:] |
任何大写字母,等价于[A-Z] |
[:alnum:] |
任何字母或数字,等价于[A-Za-z0-9] |
[:cntrl:] |
ASCII控制字符(ASCII 0~31和 ASCII 127) |
[:punct:] |
不属于[:alnum:]和[:cntrl:]的任何字符 |
[:blank:] |
空格或制表符,等价于[\t ] |
[:space:] |
任何空白字符,包括空格,等价于[\f\n\r\t\v ] |
[:print:] |
任何可打印字符 |
[:graph:] |
同[:print:],但不包括空格 |
正则表达式入门之使用元字符相关推荐
- JavaScript正则表达式详解(一)正则表达式入门
JavaScript正则表达式是很多JavaScript开发人员比较头疼的事情,也很多人不愿意学习,只是必要的时候上网查一下就可以啦~本文中详细的把JavaScript正则表达式的用法进行了列表,希望 ...
- 正则表达式入门之字符匹配
正则表达式入门-字符匹配 在前段时间进行文本挖掘练习的时候,不会使用正则表达式,深感不宜.所以这里,我想赶紧学习一下正则表达式. 注:本文是对<正则表达式必知必会>的复习. 1.正则表达式 ...
- Python 正则表达式入门(详细)
什么是正则表达式 正则表达式是一组特殊的字符序列.是对字符串操作的一种逻辑公式,正则表达式通常被用来检索.替换那些符合某个模式的文本 比如检测一串数字是否符合电话号码.检测一个字符串是否符合email ...
- 正则表达式入门级别详细教程
文章目录 常用正则表表达式 01.火车车次 02.手机机身码(IMEI) 03.必须带端口号的网址(或ip) 04.网址(URL) 05.统一社会信用代码 06.迅雷/ed2k/磁力链接 07.子网掩 ...
- 正则表达式发明者_【D1n910】正则表达式入门(三)
正常操作,正常分析,大家好,我是D1n910. 最近又发生了一些很严重的事情,祥林嫂是可怜的,可是因为又祥林嫂的存在,让一些人可能不愿意向别人倾诉自己"悲惨"的经历了. 正则表达式 ...
- Python 正则表达式入门(初级篇)
唯心不易(转载) https://www.cnblogs.com/chuxiuhong/p/5885073.html Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门 ...
- 绿色版的正则表达式测试工具及正则表达式入门教程
下载网址:https://download.csdn.net/download/xyz846/10856604 RegexTester是一款正则表达式测试器,支持单行模式.多行模式,经典的窗口设计,该 ...
- 正则表达式入门-findall()函数
正则表达式入门-findall()函数 findall()函数 例子 import re a = '123abc' re=re.findall('\d\d\d',a) print(re) 导入用于完成 ...
- 【python学习】正则表达式入门
python正则表达式入门学习 前言 今天进入python正则表达式的入门学习 学习正则表达式的初衷还是为了awd比赛做准备 (好吧,其实学习python都是为了ctf啊) 学习的目的就是为了可以提取 ...
最新文章
- android adb常用指令
- python生成报告_python生成测试报告
- 音视频技术开发周刊 | 201
- 消息(5)——WSE增强的web服务套件,MTOM附件
- iOS xcode ‘XXXX’ was compiled with optimization - stepping may behave oddly; variables may not be av
- Anaconda下载及安装详细教程(图文)
- 《淘宝网店页面设计、布局、配色、装修一本通(第2版)(全彩)》
- 脑皮质算法(3)-- 新皮层的位置:利用皮层网格细胞的感觉运动物体识别理论
- USACO--3.2Feed Ratios
- 华为网络配置(DHCP)
- 压力测试-Jmeter脚本录制方案
- python 类 实例_Python类的实例详解
- python 公主连接_ss
- Android7.1 控制背光流程
- 图书借阅管理用java实现_用java实现图书管理系统。 - 惊觉...
- iview card布局
- Treer:生成目录结构树
- Couldn't find preset es2015 relative to directory
- SuperMap大数据GIS技术白皮书 v2.1
- GPFS 对软硬件环境要求 若干问题