Я довольно новичок в регулярных выражениях. У меня есть требование заменить пробелы в тексте из нескольких строк. Правила замены таковы:
- Заменить все пробелы в начале строки на неразрывный пробел (
).
- Заменить любой экземпляр повторяющихся пробелов (более одного пробела вместе) одинаковым количеством неразрывных пробелов.
- Отдельные пробелы, которые не находятся в начале строки, остаются нетронутыми.
Я использовал Regex Coach , чтобы построить соответствующий шаблон:
/( ){2,}|^( )/
Предположим, у меня есть этот входной текст:
asdasd asdasd asdas1
asda234 4545 54
34545 345 34534
34 345
Используя функцию замены регулярного выражения PHP (например, preg_replace()
), я хочу получить следующий вывод:
asdasd asdasd  asdas1
 asda234 4545    54
  34545 345  34534
34 345
Я счастлив делать простые замены текста с использованием регулярных выражений, но у меня возникают проблемы с тем, как несколько раз заменить внутри соответствия, чтобы получить желаемый результат.