rexen
|
Posted: Mon May 23, 2022 20:48 Post subject: |
|
|
sa, нет, Ваша регулярка удаляет все пробелы подчистую.
Я так задавать "двойной пробел" пробовал самыми разными способами.
Тут, видимо, причина не в том, чтобы извернуться и выдумать некое неординарное регулярное выражение, а в самом принципе, который никак кроме в 2 шага не реализовать:
1) УДАЛИТЬ все неалфавитные символы
2) ЗАМЕНИТЬ множественные пробелы ОДНИМ пробелом
Т.е. мало того, что это две разные операции - в первой всё найденное заменяется ничем, а во второй - одинарным пробелом, так ещё и после прохода первой операции появляются эти самые лишние пробелы. Я в регулярках не спец - не в курсе как они там внутри обрабатываются - можно ли вообще в принципе организовать двойной проход одним выражением. Как программист-junior пока сомневаюсь.
---
Разве что напихать некий массив-перечисление всевозможных комбинаций пробельных/неалфавитных символов с ЗАМЕНОЙ любой из них на один пробел. Но уж больно некрасивый выход, да и число комбинаций слишком большое - придётся оставлять только самые очевидные.
Потренироваться можно на вот таком примере:
Code: | 01. PODcast - прямой_эфир. Отвечаем , вопросы, комментарии (@17`05'2022).m4a |
(здесь, кстати, по логике ещё и подчёркивание (и прочие разделяющие слова непробельные символы) надо бы пробелом заменить) |
|