如何从字符串中的每个单词中删除特定字母 - PHP

时间:2016-07-30 13:37:24

标签: php regex

假设我有这个字符串:

  

Hello World Hello My World

我想删除整个字符串中的前3个字符(但只有当单词以' Hel'开头)时才会删除。输出应该是:

  

lo world lo My World

有人可以为此推荐一个解决方案吗?

3 个答案:

答案 0 :(得分:1)

使用preg_replace函数的简单解决方案:

$str = "Hello World Hello My World";
print_r(preg_replace("/\bHel/", "", $str));  // "lo World lo My World"

条件从每个单词中删除“rld”的附加方法(仅当它出现在单词的末尾时)

print_r(preg_replace("/rld\b/", "", $str));  // Hello Wo Hello My Wo

答案 1 :(得分:1)

您可以使用以下代码:

$str = "Hello World Hello My World";
$arr = explode(" ",$str);
    for ($i = 0; $i <count($arr); $i++)
    {
      if (substr( $arr[$i], 0, 3 ) === "Hel")
      {
       $arr[$i] = str_replace("Hel","",$arr[$i]);
      }
    }
$outputstr = implode(" ",$arr);

这样做是因为它将字符串切成不同单词的数组,然后在循环中我用什么都没有替换Hel,所以这将删除Hel并将数据重新插入String ...这将检查如果Hel在开始,然后将取代......

希望这有助于......:)

答案 2 :(得分:0)

您可以使用str_replace功能。

示例

$output = str_replace(' Hel', ' ', $string);

w3schools