我最近发现了这个模式,但我真的不太理解:
^[%w-.]+$
你能给我一些与此表达式相匹配的例子吗?
我最近发现了这个模式,但我真的不太理解:
^[%w-.]+$
在Lua中有效,其中%w
(几乎)相当于其他语言中的\w
^[%w-.]+$
表示匹配一个完全由字母数字字符(字母和数字)、短划线或点号组成的字符串。
解释
^
断言我们在字符串的开头[%w-.]
匹配一个字母或数字(%w
的含义),或短划线或点号。这会相当于JavaScript中的[\w-.]
+
限定符匹配此类字符一次或多次$
断言我们在字符串的结尾参考资料
w-
这是文本范围的开始,但顺序错了。所以应该使用 %w\-
代替。
^[%w\-.]+$
意思:
^
断言字符串开头位置[%w\-.]+
匹配列表中的单个字符
+
量词:出现一次或多次,尽可能多地匹配 [贪婪模式]%w
列表中的单个字符 %w (区分大小写)\-
匹配字符 - (连字符).
字面上的字符 .$
断言字符串结尾位置编辑
由于原问题和标签已更改,因此本回答不再适用。这是基于POSIX的答案。
如@zx81评论所述:
%w
在Lua中是\w
,表示任何字母数字字符加“_”%w
实际上是\ w
。 :) - zx81