这里有一个字符串。
Actual_underscore_looks_like_'_
下面是一些应该用空格替换字符串中所有下划线的示例代码:
// Use underscores as a delimiter but allow for escaping underscores
$string = "Actual_underscore_looks_like_'_";
echo str_replace("_"," ",$string);
但是,它返回Actual underscore looks like '
。我想要Actual underscore looks like _
。此外,我可能想要显示¯'_(ツ)_/¯
。为此,我的输入字符串可以是:
¯'''_(ツ)'_/¯
如何在PHP中完成文本转换?
负查找(所有前面没有反斜杠的下划线),然后删除转义:
$string = "¯'''_(ツ)'_/¯";
$result = preg_replace('/(?<!'''')_/', ' ', $string);
$result = preg_replace('/''''(''''|_)/', '$1', $result);
echo $result;
// => Actual underscore looks like _