Вы здесь
Главная > Мой блог > WEB-разработка > Замена подстрок методами php

Замена подстрок методами php

Для замены строк вы можете использовать функцию str_replace (). Вот пример замены слова «wabbit» словом «duck» в строке:
$string = “It\’s wabbit season!”;
print (str_replace (“wabbit”, “duck”, $string) ) ;

Обратите внимание, что функция str__replace() не изменяет оригинальную строку, если вы хотите произвести замену в оригинальной строке, вам нужно использовать следующий код:
$string = str_replace (“wabbit”, “duck”, $string) ;

У функции str_replace() есть несколько дополнительных функций. Для замены только первых п вхождений подстроки добавьте это число п в качестве четвертого параметра функции:
str_replace(“wabbit”, “duck”, $string, л);

Для удаления всех вхождений подстроки просто установите пустую строку в качестве параметра replace:
$string = str_replace(“wabbit”, “”, $string);

Вы можете произвести множественную замену в строке, поместив все слова, которые вы желаете заменить, в массив:
$ugly_words = array(“hamburger”, “bacon”, “bucket о’grease”);
$string = str_replace($ugly_words, “Atkins-friendly foods”, $string);

Этот пример заменяет все вхождения слов «hamburger», «Ьасоп» и «bucket o’grease» в строке $ string строкой «Atkins-friendly foods». Вы можете даже использовать два массива одинакового размера в качестве слов для поиска и слов для замены, str_replace () заменит все элементы массива поиска соответствующими элементами массива замены:
$ugly_words = array(“hamburger”, “bacon”, “bucket о grease”);
$replacements = array(“carrot”, “broccoli”, “2% milk”);
$string = str_replace($ugly_words, $replacements, $string);

В данном случае мы заменяем все вхождения hamburger словом carrot, вceвxoждeнияbaconcлoвoмbroccoliивceвxoждeния bucket o grease на 2% milk.

Что может быть не так?

Одна из проблем функции str_replace () заключается в том, что она изменяет все вхождения заданного шаблона, не принимая во внимание его расположение в строке. Если вы заменяете off на on, вы замените также officials на onicials и coffins на connins.
Для замены нежелательных слов в небольших строках можно использовать str_replace (), но в более сложных случаях замены лучше использовать регулярные выражения.

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

Top