Относится к настройке Notepad ++. Я знаю, что TextFX «Приговор». существует, но я хотел бы контролировать это, используя собственное регулярное выражение/макрос.Notepad ++ regex, чтобы заглавнить первое слово выбранного предложения
Испытания на: hello my name is john. hello my name is john. hello my name is john.
В настоящее время у меня есть это, который работает хорошо, когда ничего не выбрано/выделено с помощью мыши.
Find what: ((?<=^|(?<=[.!?]\s)))(\w)
Replace with: \u$0
Однако, когда я выбираю/выделить второй (средний) предложение только (начиная с h
и заканчивая на период .
), регулярное выражение ничего не делает. Примечание: У меня есть опция «Использовать выбор» в N ++, и я использую «Заменить все».
Это имеет смысл, потому что регулярное выражение ищет начало строки или шаблон char .!?
, за которым следует пробел.
Мой вопрос заключается в том, как изменить регулярное выражение так, чтобы оно срабатывало при выборе/подчеркивании любого предложения, независимо от того, находится ли оно в начале строки в соответствии с моим примером.
Я попытался добавить отрицательный lookbehind для соответствия, когда никакие символы не найдены, но мне удалось загладить только первое слово каждого предложения.
Знаете, он работает, когда вы нажимаете * Заменить все *, есть проблема с * Заменить *. –
Да - если текст не высвечивается, регулярное выражение, которое я предоставил, отлично работает, но я хочу, чтобы можно было выделить предложение и преобразовать только это предложение в предложение. Поэтому мне нужно расширить регулярное выражение, чтобы охватить этот сценарий, который является моей целью, задав этот вопрос. – u01jmg3
Попробуйте '(^ | [.!?] \ S +) (\ w)' -> '$ 1 \ u $ 2' –