如何仅使用索引提取使用正则表达式的子字符串?

时间:2015-07-08 03:16:46

标签: regex logstash-grok

有没有办法提取字符串/句子的一部分,只给出子字符串的起始和结束位置的from和to索引? 例如:"这是一个example00001。等等。"我需要使用正则表达式从位置10到15(即,例子)获得子串。

2 个答案:

答案 0 :(得分:1)

使用锚定背后的外观开始。

使用位置10到15的示例:

(?<=^.{10}).{5}

如果不支持后面的操作,请使用以下组1:

^.{10}(.{5})

答案 1 :(得分:1)

我认为你需要从第11位获得你想要的比赛。这是一个例子:

    -r      extended regular expressions (only on gnu sed) 
    s       for substitution  
    |       for separator  
    (.{11}) for the first group of any 11 characters (you might want 10)  
    (.{5})  for the second group of any 5 characters 
    (.*)    for any other character, not really needed though  
    \2      for replacing with the second group

这是做什么的:

Workbook.close

您可能希望在正则表达式中使用^和$字符作为行的开头和结尾。