Как добавить символ к каждому слову в строке? - PullRequest
4 голосов
/ 21 ноября 2011

Я ищу быстрый и хороший способ добавить "-" перед каждым словом в строке. Например, «бла бла бла» должно стать «-бла -бла -бла». Я не хочу создавать массив из этой строки, затем отображать ее и т. Д. Это выглядит как неправильный и медленный путь. Есть ли у вас какие-либо предложения по этому поводу?

Ответы [ 3 ]

8 голосов
/ 21 ноября 2011

Если мы предположим, что слово всегда отделено пробелом и что пробел не имеет другого специального значения, которое мы можем сделать:

$str = 'bla bla bla';
$symbol = '-';

$newString = $symbol . str_replace(' ', " $symbol", $str);
echo $newString;

Вывод:

-bla -bla -bla
7 голосов
/ 21 ноября 2011

Вы должны использовать регулярные выражения:

echo preg_replace('/(\w+)/', '-$1', 'bla bla bla');

Поиск в Интернете для регулярных выражений, совместимых с Perl для более подробной информации!

2 голосов
/ 21 ноября 2011

Как насчет

preg_replace('/(\w+)/i', '-$1', $string);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...