您的位置首页生活百科

易语言正则表达式教程

易语言正则表达式教程

的有关信息介绍如下:

易语言正则表达式教程

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

================================如果本篇经验对您有帮助,请点赞、关注或收藏哦~

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

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

通配符匹配规则:

* :任意数量的字符

?:任何单个字符

正则 匹配规则:

*前面元素出现0次以上. 匹配任何单个字符? 前面元素出现0次或1次+ 前面元素出现1次以上^表示开头。$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

*前面元素出现0次以上

. 匹配任何单个字符? 前面元素出现0次或1次+ 前面元素出现1次以上^表示开头。$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

. 匹配任何单个字符

? 前面元素出现0次或1次+ 前面元素出现1次以上^表示开头。$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

+ 前面元素出现1次以上^表示开头。$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

+ 前面元素出现1次以上

^表示开头。$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

^表示开头。

$ 表示结尾。.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

$ 表示结尾。

.* 表示0个以上的任意字符。[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

[ ] 范围描述符。[a-z]表示从a到z之间的任意一个。\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

\w 英文字母和数字。即[0-9 A-Z a-z]。\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

\W 非英文字母和数字\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

\W 非英文字母和数字

\s 空字符,即[\t\n\r\f]。\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

\S 非空字符。\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

\S 非空字符。

\d 数字,即。\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

\d 数字,即。

\D 非数字。\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

\D 非数字。

\b 词边界字符(在范围描述符外部时)\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

\B 非词边界字符\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

\B 非词边界字符

\b退格符(0x08)(在范围描述符内部时){m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

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

{m,n} 前面元素最少出现m次,最多出现n次| 选择( ) 群组其他字符该字符本身如图,易语言正则命令列表。

{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...等)