FWIW, это может показаться идеальным местом для использования http://txt2re.com для разработки и проверки вашего регулярного выражения на примерах.
При этом, похоже, нет ничего плохого в регулярном выражении, которое заставило бы его пропустить завершающий символ ÅÄÖ
.С ними обращаются не иначе, как с другими буквенными символами.
Я подозреваю, что проблема с Unicode.Возможно, входные данные имеют конечный Ä
, который сохраняется как A
, за которым следует отдельный символ , объединяющий диарез .Решением для этого является нормализация строки Unicode до применения регулярного выражения.
Кроме того, как указывает Эмбер, проблема может заключаться в определении \b
границы слова. документы скажем, A "word" character is any letter or digit or the underscore character, that is, any character which can be part of a Perl "word". The definition of letters and digits is controlled by PCRE's character tables, and may vary if locale-specific matching is taking place. For example, in the "fr" (French) locale, some character codes greater than 128 are used for accented letters, and these are matched by \w.
Итак, вы можете получить облегчение, изменив настройку локали.
В качестве альтернативы, вы можете попробовать установить u
модификатор рисунка в случае, если вход находится в формате UTF-8.