Я пишу регулярное выражение, чтобы извлечь второе совпадение в javascript. Мой предназначенный экстракт - «attributes_», расположенный сразу после «root_first_attributes_0_second_». Для примера см. Фрагмент кода ниже.regex: фиксировать только второе вхождение
template = "root_first_attributes_0_second_attributes_0_third_attributes_0_third_name"
my regex
==========
var n = template.match(/(attributes[_\]\[]+)\d+/g)
Мое состоят регулярное выражение не работает так, как я хотел, как это возвращение всех вхождений шаблона согласования, то есть три из них вернулись.
любой совет будет оценен.
вероятно, чистейший решение просто взять второй матч вернулся. – soulcheck
Если вы хотите второй, просто выберите его: 'var n = template.match (/ (attributes [_ \] \ [] +) \ d +/g) [1]' – Atle
что-то вроде этого: '(?: (атрибуты [_ \] \ [] +) \ d + (?:. *?)) {2} '? http://www.regex101.com/r/sI0lK5 –