我正在寻找快速和好的方法在字符串中的每个单词之前添加" - ".例如,"bla bla bla"应该变为"-bla -bla -bla".我不想创建这个字符串的数组,然后映射它等等.它看起来像一个错误和缓慢的方式.你对此有什么建议吗?
如果我们假设一个单词总是由空格分隔,并且空格没有其他特殊含义,我们可以这样做:
$str = 'bla bla bla';
$symbol = '-';
$newString = $symbol . str_replace(' ', " $symbol", $str);
echo $newString;
Run Code Online (Sandbox Code Playgroud)
输出:
-bla -bla -bla
Run Code Online (Sandbox Code Playgroud)
你应该使用正则表达式:
echo preg_replace('/(\w+)/', '-$1', 'bla bla bla');
Run Code Online (Sandbox Code Playgroud)
在线搜索Perl兼容正则表达式以获取更多详细信息!