Я пытаюсь выполнить замену, где мне нужно найти пробелы, за которыми следует число или буква, с акцентами или без них, чтобы заменить их подчеркиванием. В настоящее время у меня есть это (обратите внимание на пробел в начале):
\b(?=[a-zA-Z0-9àéèêëîïôöûü])
В строке test string école test
замена выглядит так:
test_string école_test
Думаю, проблема у вас, но на всякий случай ожидаемый результат таков:
test_string_école_test
Самое странное, что если я просто ищу [a-zA-Z0-9àéèêëîïôöûü]
, он соответствует каждой отдельной букве, так что мой RegEx кажется нормальным ...
Это ошибка или я что-то упускаю?
1 ответ
Отбросьте \b
- это не важно для вашего запроса (вы уже соответствуете пробелу), а поддержка юникода в регулярных выражениях неоднородна. Обнаружение границ - ASCII только в Sublime Text 2.
Похожие вопросы
Новые вопросы
regex
Регулярные выражения предоставляют декларативный язык для сопоставления шаблонов в строках. Они обычно используются для проверки строк, разбора и преобразования. Укажите язык (PHP, Python и т. д.) или инструмент (grep, VS Code, Google Analytics и т. д.), который вы используете. Не размещайте вопросы, требующие объяснения того, что означает символ или чему будет соответствовать конкретное регулярное выражение.
\b
- это не важно для вашего запроса (вы уже соответствуете пробелу), а поддержка юникода в регулярных выражениях неоднородна. Возможно, обнаружение границ - только ASCII.