Функция str_replace и регулярные выражения

Функция str_replace и регулярные выражения

От автора: приветствую вас, друзья. В этой статье мы познакомимся с функцией str_replace, как определенной альтернативе регулярным выражениями. Итак, функция str_replace и регулярные выражения. Приступим?

Регулярные выражения — очень мощное средство для поиска и замены в тексте. Однако при решении простых задач поиска и замены далеко не всегда стоит прибегать к средствам регулярных выражений. Это будет сродни стрельбе из пушки по воробьям. Задачу-то вы решите, но средств для ее решения потратите больше, чем могли бы.

Например, перед нами стоит следующая простейшая задача. Есть строка с группами цифр, разделенных пробелами. Необходимо эти пробелы заменить, скажем, символом тире. Задача действительно простейшая и решить ее можно таким же простейшим шаблоном регулярного выражения:

Однако эту же задачу можно решить и без регулярных выражений. Для решения можно обратиться к функциям для работы со строками, в частности в PHP это будет функция str_replace. Функция принимает три обязательных параметра:

Бесплатный курс по PHP программированию

Освойте курс и создайте динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

search — что ищем

replace — на что меняем

subject — где ищем и меняем

Решим задачу, используя функцию str_replace:

Результат получим тот же, что и с использованием регулярных выражений. Приятным бонусом может стать тот факт, что функция str_replace может работать не только со строками, но и с массивами (array). Примеры работы можно найти в документации.

Стоит учитывать, что функция str_replace регистрозависима. Например, если мы захотим изменить все буквы «r» в некой строке, то будут заменены только буквы указанного регистра:

Но есть и регистронезависимый аналог этой функции — str_ireplace, который в остальном работает точно так же:

Конечно же, это простые задачи и уже для более сложных придется все-таки обращаться к помощи регулярных выражений. Но если мы можем обойтись без тяжелой артиллерии, тогда зачем палить из пушки по воробьям?

На этом у меня все. Больше о регулярных выражениях вы можете узнать из нашего курса по регулярным выражениям. Удачи!

Бесплатный курс по PHP программированию

Освойте курс и создайте динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC

В курсе 39 уроков | 15 часов видео | исходники для каждого урока

Получить курс сейчас!

Хотите изучить регулярные выражения на PHP?

Прямо сейчас посмотрите 12-ти часовой курс по регулярным выражениям на PHP!

Смотреть курс

Метки:

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Я не робот.

Spam Protection by WP-SpamFree