- 避免使用
$1-9
因为可能难以辨认出是哪一个,取个名。# 错误 /(regexp)/ =~ string ... process $1 # 正确 /(?<meaningful_var>regexp)/ =~ string ... process meaningful_var
- 小心使用
^
和$
因为它们匹配的是行头/行末,而不是某个字符串的结尾. 如果你想匹配整个字符串, 用:\A
和\z
。string = "some injection\nusername" string[/^username$/] # matches string[/\Ausername\z/] # don't match
- 使用
x
修饰符在复杂的正则表达式上。这使得它更可读, 并且你可以加有用的注释。只是要注意空格会被忽略。regexp = %r{ start # some text \s # white space char (group) # first group (?:alt1|alt2) # some alternation end }x
11. 正则表达式 (Regular Expressions)
作品《Ruby 代码风格指南 - 11. 正则表达式 (Regular Expressions)》由 一点 发布于 匠果,转载请注明出处及链接地址:
http://www.jiangguo.net/c/n38/m4l.html