6、正则表达式:强大的模式匹配工具

正则表达式:强大的模式匹配工具

1. 正则表达式简介

在模式匹配的世界里,之前提到的 glob 模式虽然简单,能满足很多基本需求,是 expect 命令中默认的模式匹配风格,但它存在一定局限性。比如,它无法匹配不在指定字符列表中的字符,也不能匹配多个不同字符串的选择,而这些都是比较常见的任务。虽然可以通过一系列其他命令来模拟这些功能,但 Expect 提供了更强大、简洁的机制——正则表达式。

2. 正则表达式快速入门

为了快速掌握正则表达式,我们先看看它与 glob 模式的相似之处。每个 glob 模式都可以用正则表达式表示,但有些正则表达式无法用 glob 模式表示。以下是两者的对比:
| glob | regexp | English |
| — | — | — |
| s | s | literal s |
| * | * | literal * |
| ^ | ^ | beginning of string |
| $ | $ | end of string |
| [a - z] | [a - z] | any character in the range a to z |
| [^a - z] | [^a - z] | any character not in the range a to z |
|? |. | any single character |
| * | * | any number of characters |

除了 “. ” 外,表中的每个模式都称为原子。在原子后面加上 * 会创建一个模式,该模式可以匹配任意数量(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值