Категория:
Опубликовано:

Удаляем ненужные символы в начале строки - Регулярные выражения

Часто возникает необходимость автоматически исправлять неправильно введенные данные.

Например: " =Санкт-Петербург" на "Санкт-Петербург", т.е. убрать лишние символы до слов. Но! Мы не можем просто удалить все символы, т.к. в примере символ "-" обязателен в названии.

В этом примере мы решим данную задачу с помощью Регулярных Выражений (RegExp).

Решается все с помощью следующего кода:

 <?php
   $str = $trimmed_field; 
   while(!preg_match('/^[А-ЯЁA-Z]/iu', $str)){  
     $str = preg_replace('/^[^А-ЯЁA-Z]/', '', $str); 
   };
   echo $str;
 ?>

Где: $trimmed_field - Обрезаемая переменная /^[А-ЯЁA-Z]/iu - Выражение соответствующее всем символам русского и английского алфавитов

В итоге обработке мы получим необходимое нам значение, из примера выше - Санкт-Петербург.

Еще вариант с PHP функциями trim, ltrim, rtrim:

 <?php
   $str = $trimmed_field; 
   $str = trim ($str, " \t\n\r\0\x0B.,;:_\-"'()");
   echo $str;
 ?>

В этом случае нужно устанавливать символы, которые необходимо обрезать (" \t\n\r\0\x0B.,;:_\-\"'()")

Если у Вас возникли вопросы, замечания, предложения или просто благодарность - пишите в комментариях.
Делитесь полезными материалами в социальных сетях.
Добавить комментарий