Перед поиском с помощью регулярного выражения, например [A-Z]
, вы должны нажать кнопку чувствительной к регистру (или Alt + C) (поскольку leemour приятно предложил для редактирования в принятом ответе). Для того, чтобы быть ясным, я оставляю несколько других примеров:
(\s)([a-z])
(\s
также соответствует новым строкам, то есть «venuS "=>" VenuS ") Заменить: $1\u$2
(\s)([A-Z])
Заменить: $1\l$2
([a-z])([A-Z])
Заменить: $1\l$2
(\w)([A-Z]+)
Заменить: $1\L$2
Альтернативный Заменить: \L$0
(\w)([A-Z]+)
Заменить: $1\U$2
(\w+)([A-Z])
Заменить: \U$1$2
(\w+)([A-Z])
Заменить: \L$1$2
([A-Z])(\w+)
Заменить: $1\U$2
([A-Z])(\w+)
Заменить: $1\L$2
([a-z\s])([A-Z])(\w)
Repl ace: $1\l$2\u$3
(\w)([A-Z])([a-z\s])
Заменить: \u$1\l$2$3
Относительно вопроса (сопоставьте слова с хотя бы одним прописным и одним строчным буквой и сделайте их строчный), комментарий-ответ leemour - правильный ответ. Чтобы уточнить, если есть только одна группа для замены, вы можете просто использовать ?:
во внутренних группах (например, группы не захвата ) или вообще не создавать их:
((?:[a-z][A-Z]+)|(?:[A-Z]+[a-z]))
ИЛИ ([a-z][A-Z]+|[A-Z]+[a-z])
\L$1
Тайлер предложил путем редактирования этого ответа альтернативное выражение для # 4:
(\B)([A-Z]+)
Согласно документация , \B
будет искать символ, который не находится на границе слова (то есть не в начале, а не в конце). Вы можете использовать кнопку Replace All , и она делает то же самое, что и если вы нашли (\w)([A-Z]+)
в качестве выражения поиска.
Однако недостатком \B
является то, что он не допускает одиночных замен, возможно, из-за ограничения find «без границ» (пожалуйста, отредактируйте это, если вы знаете точную причину).