通过使用正则表达式(\\.|.)
,遍历字符串的常用习惯用法可以使用反斜杠转义字符,如下所示:
alert( "some\\astring".replace(/(\\.|.)/g, "[$1]") )
用JavaScript编写的。此代码将字符串some\astring
更改为[s][o][m][e][\a][s][t][r][i][n][g]
。
我知道Lua模式不支持OR运算符,因此我们无法将此正则表达式直接转换为Lua模式。
然而,我想知道:是否有另一种方法可以使用Lua模式在Lua中执行此操作(遍历可能转义的字符)?
答案 0 :(得分:5)
你可以尝试
(\\?.)
并替换为[$1]
请参阅it on Regexr。
?
是0或1出现的快捷量词,因此上述模式匹配前一个字符和一个可选的反斜杠。如果?
无效(我不知道lua),您可以尝试使用{0,1}
。这是同样的长版本。