Я хочу совместить только значение этой строки, которая заканчивается с ZW-Summe с RegEx (JavaScript, поэтому нет lookbehind - пожалуйста, подумайте: я должен использовать регулярное выражение):
[here is a lot more data with line breaks and so on...]
2,550%Zinsen 83,72ZW-Summe U
St 83,72Umsatzs? [more lines...]
Проблема: возможны разрывы строк, даже это может произойти:
[data....] 2,550%Zinsen 83,7
2ZW-Summe U
St 83,72Umsatzs? [more lines...]
Моя цель состоит в том, чтобы соответствовать только 83,72, без ZW-Summe, и, конечно, значение может измениться. Возможные значения:
Я должен определить значение с помощью строки ZW-Summe, потому что может быть больше значений значений.
Моя первая попытка: ((\d{0,3}((\.\d{3})){0,2}),\d{2})ZW-Sum
но это также соответствует ZW-Sum и я я не могу получить доступ к группам, и основная проблема заключается в том, что я не игнорирую возможные разрывы строк.
Надеюсь, что даже можно что-то сопоставить (-VALUE-ZW-Summe) и игнорировать ZW-Summe в результате?
Благодарим вас за любые предложения.
Это сработало для меня, и это довольно просто: /([\d,.\n]+)(?=ZW-Summe)/g
? = /([\d,.\n]+)(?=ZW-Summe)/g
.
Он в основном просто соответствует ряду цифр, запятых, периодов и строк, где после указанной серии ZW-Summe
(?=
, Положительный результат). Флаг g
заставляет игнорировать разрывы строк.
Однако, после того, как вы запустите его, обязательно match = match.replace('\n', '');
символы новой строки (т.е. match = match.replace('\n', '');
).