我的示例文件如下:
H343423 Something1 Something2
C343423 0
A23423432 asdfasdf sdfs
#2342323
我有以下正则表达式:
if (line =~ /^[HC]\d+\s/) != nil
puts line
end
基本上我想阅读所有以 H 或 C 开头且后跟数字的内容,并且我想在遇到空格时停止阅读(我想阅读一个单词)。
我想要的输出是:
H343423
C343423
我的 RegEx 得到的输出是:
H343423 Something1 Something2
C343423 0
所以它正在获取整行,但我只是希望它在读取第一个单词后停止。
有什么帮助吗?
最佳答案
if (line =~ /^([HC]\d+)/)
puts $1
end
有关详细信息,请参阅
如果不想用括号,匹配项有专门的变量$&
下面会做同样的事情
if line =~ /^[HC]\d+/
puts $&
end
关于ruby - Ruby 中的正则表达式帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2862353/