Мне кажется, скобки имеют два значения в регулярных выражениях:Как скобки используются в регулярных выражениях с помощью Javascript?
1- они используются для захвата - как в: /(\d{3})-(\d{3})-(\d{4})/g
2 - они используются для группы - как в: /(phone|#)?\d{3}-\d{3}-\d{4}/g
Есть ли способ указать, что регулярное выражение должно группироваться в одном выражении и захватывать на другом. Кажется, для каждого из них должно быть другое обозначение.
Обратите внимание, что ваше понимание немного неверно: 1 - используется для группировки и захвата, но группа имеет только одну альтернативу, 2- используется для группировки и захвата с группой, содержащей две альтернативы. '()' имеет только одну группу значений (что подразумевает захват). Модификатор '?:' Отключает захват. – slebetman