# Lua正则表达式备忘

## 查找示例
```lua
local _, _, ver = string.find(uboot_data, 'U-Boot (%d+%.%d+%.%d+) %(')
```
## Lua支持的字符类
```
. 任意字符
%s 空白符
%p 标点字符
%c 控制字符
%d 数字
%x 十六进制数字
%z 代表0的字符
%a 字母
%l 小写字母
%u 大写字母
%w 字母和数字
上面字符类的大写形式表示小写所代表的集合的补集。例如，'%A'非字母的字符：

模式修饰符
+ 匹配前一字符1次或多次
* 匹配前一字符0次或多次;最长匹配  -- 先尽可能长地把本次匹配模式走完,再继续下一个模式,
- 匹配前一字符0次或多次;最短匹配  -- 本次匹配模式每走一步,就考查下一个模式能否进入.
? 匹配前一字符0次或1次
^ 匹配字符串开头
$ 匹配字符串结尾
```
## 备忘
* 模式中`.`号用`%.`表示，而不是用`\.`
