【问题标题】:Replace multiple occurrence of a character in a string in php在php中替换字符串中多次出现的字符
【发布时间】:2021-11-24 14:15:14
【问题描述】:
$string = IT_Support_/_Help_Desk // what I have
$whatIwant = IT Support Help Desk // what I want

我有这个字符串,我想将所有出现的空格“_”替换为“”

【问题讨论】:

  • 请注意:我尝试过 str_replace,但它只适用于两个单词字符串,如“hello_world”,而不适用于“hey_there_hello_world”,这很奇怪,因为当我第一次用“_”修改字符串时它会出现下划线通过数据属性将它们传递给 html 元素,但现在在后端再次用“”(空格)再次替换它们仅适用于两个单词字符串。对使用 preg_match 的正则表达式有任何帮助吗??
  • str_replace(['_', '/', ' '], ' ', $str) 呢?

标签: php string replace


【解决方案1】:

您可以为此使用preg_replace 与非单词字符\W_ 的组合,如下所示:

<?php

$string = "IT_Support_/_Help_Desk";

echo preg_replace('/[_\W]+/', ' ', $string);

【讨论】:

  • 非常感谢。我最终使用了 javascript .replaceAll 方法。这也有效
【解决方案2】:
$string = "IT_Support_/_Help_Desk";
$string = preg_replace('~[\\\\\/:*?"<>|_]~', ' ', $string);

echo $string;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-16
    • 1970-01-01
    • 2013-04-24
    • 2017-05-08
    • 2011-04-19
    • 2016-05-07
    • 2011-07-26
    相关资源
    最近更新 更多