Php 如何为字符串中的每个单词添加符号?
我正在寻找在字符串中的每个单词之前添加“-”的快速而好的方法。例如,“bla-bla-bla”应该变成“-bla-bla-bla”。 我不想用这个字符串做一个数组,然后映射它,等等。这看起来是一个错误的、缓慢的方法。 你对此有什么建议吗?怎么样Php 如何为字符串中的每个单词添加符号?,php,php-5.3,Php,Php 5.3,我正在寻找在字符串中的每个单词之前添加“-”的快速而好的方法。例如,“bla-bla-bla”应该变成“-bla-bla-bla”。 我不想用这个字符串做一个数组,然后映射它,等等。这看起来是一个错误的、缓慢的方法。 你对此有什么建议吗?怎么样 preg_replace('/(\w+)/i', '-$1', $string); 您应该使用正则表达式: echo preg_replace('/(\w+)/', '-$1', 'bla bla bla'); 在线搜索与Perl兼容的正则表达式以获
preg_replace('/(\w+)/i', '-$1', $string);
您应该使用正则表达式:
echo preg_replace('/(\w+)/', '-$1', 'bla bla bla');
在线搜索与Perl兼容的正则表达式以获取更多详细信息 如果我们假设一个单词总是由一个空格分隔,并且空格没有其他特殊含义,我们可以:
$str = 'bla bla bla';
$symbol = '-';
$newString = $symbol . str_replace(' ', " $symbol", $str);
echo $newString;
输出:
-bla -bla -bla
你如何定义这个词?
“42”
是一个单词吗?那呢?
?那么“-”
?速度慢有关系吗?你到底要花多少钱?获得一个有效的(如果不美观的)解决方案可能比寻求过早的优化更好地利用您的时间。通过“生成字符串数组”,您指的是php split()函数吗?这就是我处理这个问题的方法,不需要使用I
修饰符,因为\w
已经处理好了,谢谢。好的,简单的解决方案。