使用正则表达式获取另一个字符串中的字符串

时间:2016-03-03 10:23:28

标签: ruby regex

我正在遍历包含以下行的全局数组:

/abc/def/ghi/jkl_123/mno1281/ieu

我必须获取表达式"jkl_*"。请提供一些方法来完成它。

我正在尝试使用它:

str=/abc/def/ghi/jkl_123/mno1281/ieu
values=str.match(/jkl_(.*)\//)[1]

我收到以下错误:

  

block in process_ddfs_log': undefined method []'中为nil:NilClass   (NoMethodError)

1 个答案:

答案 0 :(得分:0)

已删除[1]并在您的正则表达式

上添加了?
(\/jkl_(.*?)\/)

DEMO

输出:

  

比赛1
  1. [13-20] jkl_123
  2. [17-20] 123

注意:
.* - 尽可能多次 .*? - 尽可能少的次数