正则表达式 - 忽略没有参数的变量

时间:2018-01-20 11:24:39

标签: javascript regex

我想在以下字符串上实现JavaScript正则表达式:

{{global_now_date}}-{{report date, [[YYYY]]}}-{{report date, [[MM]]}}-{{job_id}}_test_1_{{bca clause}}-Rev-{{report revision no.}}

我想找到以下内容:

{{report date, [[YYYY]]}}

{{report date, [[MM]]}}

没找到:

{{global_now_date}}

我可以获得正则表达式的后面部分,但不能获得前面部分。

例如。日期,\[{2}.*?\]{2}}{2},但我无法让前面部分正确。

1 个答案:

答案 0 :(得分:0)

在正则表达式[{2}.*?]{2}的这一部分中,您指定的character class可以匹配字符{ 2 } . {{1} } * 2次?。 然后将花括号匹配2次{2}

这将匹配例如}{2}

也许这符合您的要求:

{{2}report date.*?}{2}

匹配:

  • 匹配2次花括号??}}
  • 匹配{{2}
  • 匹配任何字符零次或多次非贪婪report date
  • 匹配大括号.*?
  • 的2倍