Java Regex исключает отрицательное lookeahaead в группе совпадений - PullRequest
0 голосов
/ 27 мая 2019

Здесь у меня есть регулярное выражение: https://regex101.com/r/uiY6iE/7

(?i:Stellenreferenz|Referenznummer|Stellenausschreibung Nr\.|kennziffer):?\s*([A-Z]*\s*.*?\s*[A-Z]*)(?=\s+)\b(?!(?:straße|email|adresse|postalisch))

и тестовая строка. Я хотел бы игнорировать все, что следует за стоп-сигналами в последней части группы (электронная почта ... и т. Д.), Доприходит другое стартовое слово сигнала (в первой группе: referenznummer и т. д.)

, но я также хочу исключить последнюю группу как соответствующую группу ..

вот моя тестовая строка:

Referenznummer: postalisch W LD-1502_aföv.,  W Teststrasse 349020 Kennziffer 39-W-3249  Email 30230
Kennziffer: postalisch an 3939 referenznummer: email: 393942

каким-то образом в регулярном выражении слово postalisch распознается как совпадающее слово группы 1 ... но я хотел бы игнорировать его.

РЕДАКТИРОВАТЬ: кроме того, если егоЗа ALLCAPS следуют / предшествуют смешанные строки и пробелы, такие как ST 302AT_39 WW, все они должны совпадать.Но если один из символов суффикса / префикса не является all-caps, он не должен учитываться, например: ST AT39-WM Ag должен соответствовать только ST AT39-WM.

...