Ruby RegExp与评论中的其余部分匹配

时间:2013-10-09 18:40:15

标签: ruby regex

我需要编写一个符合以下内容的Ruby RegExp:

# @name 'foo'
#   @name   'foo'
# @name foo

foo

它应该基本上查找包含已注释掉的@name的每一行,并获取其后面的字符串。

2 个答案:

答案 0 :(得分:2)

简单版本是:

line.match(/^\s*\#\s*@name\s+(.*)/)

更复杂的版本会占'

line.match(/^\s*\#\s*@name\s+\'?([^']*?)\'?/)

这不会考虑像'foo\'s'这样的转义字符。

答案 1 :(得分:1)

你可以使用它。

line.match(/^\#\s+@name\s+["']?(.*?)["']?$/)

请参阅Rubular