Ruby RegEx之间的匹配。并且:

时间:2010-12-21 01:42:03

标签: ruby regex

我有这个字符串:“51。有些东西:”和想在ruby中使用reg ex提取“某些东西”。谁能指出我正确的方向来匹配a。和a:丢弃其他所有东西?

2 个答案:

答案 0 :(得分:1)

这应该这样做:

(?<=\.).+?(?=:)

如果您想避免匹配中的前导和尾随空格,可以使用:

(?<=\.\s*)\S.*?(?=\s*:)

编辑:我刚检查过,发现Ruby不支持lookbehind,这里使用的是lookbehind。或者,您可以使用此方法并捕获正则表达式:

\.\s*(\S.*?)\s*:

答案 1 :(得分:1)

'51. some thing:'.sub /.*\. *([^:]*).*/, '\1'
=> "some thing"
相关问题