菜单

正则工具

标签:正则表达式 ,正则

用于测试、调试和应用正则表达式(一种文本模式匹配工具)

一、正则(正则表达)

1、正则表达式简介

正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个【规则字符串】,这个【规则字符串】用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。

2、正则的用途

字符串匹配(字符匹配)

字符串查找

字符串替换

3、常用元字符及描述

\d 匹配一个数字字符。等价于[0-9]

\D 匹配一个非数字字符。等价于[^0-9]

\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。

\S 匹配任何非空白字符。

\w 匹配构成单词的字符(字母、数字、下划线)。等价于[A-Za-z0-9_]

\W 匹配非构成单词的字符。等价于[^A-Za-z0-9_]

\p{Lower} 英文的小写字母

.  任意一个字符

X* 任意次数

X+ 一次或多次

X? 最多一次

X{n} 正好n次

X{n,} 最少n次,上不封顶

X{n,m} 最少n次,最多m次

[] 表示一个范围

[a-z]|[A-Z]   [a-zA-Z]   [a-z[A-Z]]   a到z 或A到Z

[A-Z&&[RFG]]  A到Z并且RFG  (交集的意思)

“” 正则 “a?” 零宽度匹配,出现零次

边界匹配

^开头和$结尾

^h.*  .*ir$   ^h[a-z]{1,3}\b

\b 一个单词的边界,空格、换行……

^[\s&&[^\n]]*\n$  空白行,开头是空白字符但不是换行符,出现0次或多次,且紧跟着是结束的换行符

4、常用正则表达式

匹配所有数字 [0-9]+

去除所有空格  \s+

匹配任意字符:

匹配包括换行符在内的任意字符 ([\s\S]*) 同时,也可以用 “([\d\D]*)”、“([\w\W]*)” 来表示

([\s\S]*?)  加上问号 表示最短匹配

匹配时间 \d{4}-\d{2}-\d{2}

匹配时间 20\d{2}(([^\d]|/s|//|:)?\d{1,2}){5}

匹配时间 [0-9]{4}年[0-9]{1,2}月[0-9]{2}日[\s\S]*[0-9]{2}:[0-9]{2}

匹配日期 [0-9-:]+

匹配标题 [0-9|.]+[k|K|m|M|g|G|片|枚|/|L||克|l|/]+

[0-9|.]{1,10}[mm]

[0-9|.][0-9|/]{1,10}[k|K|m|M|g|G|p|片|枚|支|个|盒|条|对|/|L||克|l|/|0-9]+

名字只保留姓氏 \B.

电话加密 (?<=[0-9]{3})(.)+(?=[0-9]{4})

以XX为结束 ([\s\S]*?)(?=来源)

空格开始获取and前第一个单词 \b([^ ]+?)\b(?= and )

去除尾部空格:(\s*$)

 

匹配图片:

(?<=<img)(.+?)(?=>)

(?<=src=")(.+?)(\.jpg|\.png|\.gif|\.bmp|\.jpeg)

(?<=src=")(.+?)(\.jpg|\.png|\.gif|\.bmp|\.jpeg|\.JPG|\.PNG|\.GIF|\.BMP|\.GIF)

[^/]+.jpg

[^/]+(\.jpg|\.png|\.gif|\.bmp|\.jpeg)

(http:|https:|//)(.+?)(\.png|\.jpg|\.gif|\.bmp|\.jpeg)

 

3、常用实例

1)如果要匹配出 \  | 这两个符号要在表达式里面加下反\

示例用八爪鱼RPA正则工具演示: \\  \|

 

2) 表达式的开始结束表示

以什么开始不包含:(?<=开始字符)

以什么结束不包含:(?=结束字符)

表示任意字符(.+?)

 

二、正则工具

使用正则工具可以轻松写出正则表达式,点击打开菜单栏中的正则工具

界面如图所示,输入待转换的源文本,在右侧自动生成栏里输入起始位置和结束位置(如果没有限制可以留空),勾选是否包含开始结束,输入是否包含某个字段

下面举个简单的例子

例如,我们希望获取【八爪鱼RPA客户端更新日志】的网址链接,而部分网址链接隐藏于源码之中,那么怎么找到提取目标网址的链接呢

首先在网页内右击检查,查看网页源码内容,单击左侧图标,定位到目标元素

找到目标元素以后,右击复制元素,输入到正则工具内,确定目标网址开始和结束相邻字段,可添加【包含一个】内容

输入完成后,点击完成,生成正则表达式

点击匹配测试匹配结果,成功提取出目标网址

正则表达式应用广泛,在八爪鱼RPA中数据处理中很多指令都应用了正则表达,可以在流程中灵活运用

 

上一个
八爪鱼浏览器
下一个
Python库管理
最近修改: 2023-12-06