文章目录
  1. 1. char related
    1. 1.1. coding
    2. 1.2. Regular Expressions
    3. 1.3. example

char related

coding

Regular Expressions

ref: http://blog.csdn.net/vermilliontear/article/details/50696348
.: (一个点)表示任何一个字符。
+: 匹配一次或多次,最长匹配。
*: 匹配零次或多次,最长匹配。
-: 匹配零次或多次,最短匹配。
?: 匹配零次或一次。
[]: 两个字符组合使用表示一个字符集合。
(): 两个字符组合使用表示一个捕获。
^: 表示从行首开始匹配。
$: 表示匹配到行尾。
%: 转义字符。可以将”magic characters”转义为其字面的含义。注:不同编辑器或语言定义的转义符可能不同

x:(这里’x’不能是”magic characters”中的一员)表示字符’x’自身。
%a: 表示任何字母。
%c: 表示任何控制字符。
%d: 表示任何数字。
%g: 表示任何除空格符外的可打印字符。
%l: 表示所有小写字母。
%p: 表示所有标点符号。
%s: 表示空格符。
%u: 表示所有大写字母。
%w: 表示所有字母及数字。
%x: 表示所有十六进制数字符号。
%x: ‘%’是转义字符,’x’是任意非字母或数字的字符,”%x”表示字符’x’本身。
‘%’是对”magic characters”转义的标准方法。

可以使用'-'字符以升序的方式连接两个字符以表示一个范围内的所有字符,
也可以单独列出需要的字符以组成一个字符的集合。
例如,"[%w_]"(或"[_%w]")表示所有的字母数字加下划线的字符集合,
"[0-7]"表示八进制数字的字符集合,
"[0-7%l%-]"表示八进制数字加小写字母加'-'字符的字符集合。

上面从”%a”到第一个”%x”的这些模式项,若将其字母改为大写,均表示其对应的补集。
例如,”%S”表示所有非空格字符的字符。

example

1
2
3
4
5
 blabla = blabla    ->  \s(.+) = \1$
这里\表示转义(适用于vs code),vs code替换时$用来取查找时匹配的括号的值,如$1表示前面括号的内容(\1)

匹配lua代码中不含in字符串的for语句(排除pairs或ipairs的for语句):
for (?!.*in ).* do
文章目录
  1. 1. char related
    1. 1.1. coding
    2. 1.2. Regular Expressions
    3. 1.3. example