("price"\s?:\s?"(?:\d+\.?)+)(\s?€)"
подлежит замене на $1"
$1
- первая захваченная группа. В этом RegEx это: ("price"\s?:\s?"(?:\d+\.?)+)
- 1-я группа захвата
("price"\s?:\s?"(?:\d+\.?)+)
:
-> "price"
соответствует буквам "price"
буквально (с учетом регистра)
-> \s
соответствует любому символу пробела (равному [\r\n\t\f\v ]
)
-> ?
Квантификатор - соответствует от нуля до одного раза, столько раз, сколько возможно, возвращая при необходимости (жадный)
-> :
буквально соответствует символу :
(с учетом регистра)
-> \s
соответствует любому символу пробела (равному [\r\n\t\f\v ]
)
-> ?
Квантор - сопоставляет от нуля до одного раза столько раз, сколько возможно, возвращая при необходимости (жадный)
-> "
соответствует символу "
буквально (с учетом регистра)
- Группа без захвата
(?:\d+\.?)+
-> +
Квантификатор - сопоставляет от одного до неограниченного числа раз, столько раз, сколько возможно, возвращая при необходимости (жадный)
-> \d+
соответствует цифре (равной [0-9]
)
-> \.?
соответствует символу .
буквально (с учетом регистра)
- 2-я группа захвата
(\s?€)
-> \s
соответствует любому символу пробела (равен [\r\n\t\f\v ]
)
-> ?
Квантификатор - Сопоставляется от нуля до одного раза столько раз, сколько возможно, возвращая при необходимости (жадный)
-> €
соответствует символу €
буквально (с учетом регистра)
-> "
соответствует символу "
буквально (с учетом регистра)
Это будет заменено на $1"
, который является первой захваченной группой, за которой следует "
Проверьте сами