易语言正则表达式教程

正则表达式 是字符串匹配的一种模式,与通配符(*?)类似。应用范围比较广泛。比如:搜索指定正则格式数据、屏蔽指定格式内容、指定内容高亮等等。

工具/原料

电脑

易语言 软件

方法/步骤

易语言自带了 两种正则表达式支持库。

先简单说一下正则的匹配规则。

通配符匹配规则:

* :任意数量的字符

?:任何单个字符

正则 匹配规则:

* 前面元素出现0次以上

. 匹配任何单个字符

? 前面元素出现0次或1次

+ 前面元素出现1次以上

^ 表示开头。

$ 表示结尾。

.* 表示0个以上的任意字符。

[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。

\w 英文字母和数字。即[0-9 A-Z a-z]。

\W 非英文字母和数字

\s 空字符,即[\t\n\r\f]。

\S 非空字符。

\d 数字,即[0-9]。

\D 非数字。

\b 词边界字符(在范围描述符外部时)

\B 非词边界字符

\b 退格符(0x08)(在范围描述符内部时)

{m,n} 前面元素最少出现m次,最多出现n次

选择

( ) 群组

其他字符 该字符本身

如图,易语言正则命令列表。

我们使用通配符搜索(*.exe)文件时,说明是搜索所有后缀为 .exe 的文件。正则和匹配符类似,只是比通配符匹配能力更强大。

在使用正则之前,需要先声明一个 正则表达式类型的变量。再使用创建命令创建一个正则对象。

可以使用 是否为空() 命令来判断 正则对象是否为空或者是否创建。

我们可以使用 匹配() 命令来判断 指定内容是否与 正则文本 匹配。匹配成功返回真,失败返回假。例程中的6换成其他单个字符也会匹配成功,返回真。

除了 判断全文是否匹配外,还可以从文本中搜索正则匹配部分文本。

搜索()可以搜索到文本中第一个匹配内容。

可使用 搜索全部() 命令 搜索出所有正则匹配内容。

简单正则匹配示例:

9+ 匹配9出现1次以上 (99、999、9999...等)

[abc] 匹配abc、 acb、bac、 bca、cab、cba 6个文本

\d{3,6} 匹配连续的3到6个数字 (001-999999)

[a-z]\d 匹配任何一个字母加一个数字 (a0、d9、n8、w5...等)

(0)

相关推荐