Вам необходимо внести некоторые изменения в свое текущее регулярное выражение, чтобы оно работало корректно.
Вместо выражения \b\H+[A-Z]\b вы можете использовать следующее регулярное выражение:
\b\w*[A-Z]\w*\b
Чтобы разобраться, что изменилось, взглянем на составляющие данного выражения:
- \b - граница слова (начало и конец слова)
- \w* - любой символ слова (буквы, цифры или подчеркивание), повторяющийся ноль или более раз
- [A-Z] - заглавная буква, которую вы ищете
- \w* - любой символ слова (буквы, цифры или подчеркивание), повторяющийся ноль или более раз
- \b - граница слова (начало и конец слова)
Это выражение будет искать слова, которые содержат хотя бы одну заглавную букву.
Обратите внимание, что в этой регулярке подразумевается, что под словом все еще будет считаться набор символов без пробелов. Если вы хотите искать слова с пробелами внутри, вам также придется внести некоторые изменения в выражение.