正则表达式 - 匹配某些字符后的文字

Tus*_*arg 10 ruby regex

我想从一些文本中抓取数据并将其转储到数组中.考虑以下文本作为示例数据:

| Example Data
| Title: This is a sample title
| Content: This is sample content
| Date: 12/21/2012
Run Code Online (Sandbox Code Playgroud)

我目前正在使用以下正则表达式来刮取"冒号"字符后指定的数据:

/((?=:).+)/
Run Code Online (Sandbox Code Playgroud)

不幸的是,这个正则表达式还抓住结肠和结肠后的空间.我如何只获取数据?

此外,我不确定我是否正确这样做..但似乎外部的parens导致匹配返回一个数组.这是parens的功能吗?

编辑:我正在使用Rubular来测试我的正则表达式

Ry-*_*Ry- 17

您可以将其更改为:

/: (.+)/
Run Code Online (Sandbox Code Playgroud)

并且抓住第1组的内容.但是,后视也是有效的,而且正是你所要求的:

/(?<=: ).+/
Run Code Online (Sandbox Code Playgroud)