在 string:match() 中允许更多字符
Allow more characters in string:match()
string:match( "[^%w%s]" )
据我所知,目前只允许字母、数字和空格。我怎样才能给它添加字符?例如,我也想允许 (
和 _
。
string:match( "[^%w%s(_]" )
这将添加您提到的字符。基本上您在方括号中添加的任何字符。
有些需要转义,比如括号。
字符集开头的^
表示取补。在您的示例中,[^%w%s]
匹配不是 letter/digit(%w
) 或空格 %s
.
的字符
如果需要添加(
和_
,只需添加:[^%w%s(_]
string:match( "[^%w%s]" )
据我所知,目前只允许字母、数字和空格。我怎样才能给它添加字符?例如,我也想允许 (
和 _
。
string:match( "[^%w%s(_]" )
这将添加您提到的字符。基本上您在方括号中添加的任何字符。
有些需要转义,比如括号。
^
表示取补。在您的示例中,[^%w%s]
匹配不是 letter/digit(%w
) 或空格 %s
.
如果需要添加(
和_
,只需添加:[^%w%s(_]