我想创建一个正则表达式,例如:
/\\\s*\\\s*$/
我正在以这种方式尝试:
Regexp.new('\\\s*\\\s*$') # => /\\s*\\s*$/
我做错了什么?
答案 0 :(得分:4)
好(\\
)匹配单个反斜杠。反斜杠用作 Regexp 的转义字符。
rgx = Regexp.new('\\\\\\s*\\\\\\s*$')
更详细的方法是@Cary Swoveland所述的以下内容。
rgx = Regexp.new('\\{3}s*\\{3}s*$')
答案 1 :(得分:1)
使用文字符号可以避免一些混淆。这将编译为您想要的所说的:
/\\\s*\\\s*$/
但是,要清楚,这仍然匹配单个反斜杠,可选的空格是一个反斜杠和更多可选的空格。检查正则表达式时会反转斜杠。