Замените строку "пробелы" на "запятую" и удалите все, кроме 5 первых слов - PullRequest
1 голос
/ 24 сентября 2010

Нужна небольшая помощь с форматированием строки ...

У меня есть такая строка:

Bmw m3 fully equipped and low mileage

Мне нужно заменить пробелы запятыми, итакже одновременно удалите все специальные символы (все нечисловые, не буквенные символы, кроме шведского å ä ö)

Затем мне нужно удалить все, кроме первых 5 слов, или вы можете сказать все, что за пятой запятой.

Я хочу что-то подобное из приведенной выше строки:

Bmw,m3,fully,equipped,and

Спасибо

Ответы [ 2 ]

3 голосов
/ 24 сентября 2010

( Результат )

$res = preg_replace('/[^a-z0-9åäö\s]/ui', '', $theString);
$arr = preg_split('/\s+/', $res, 6);
echo implode(',', array_slice($arr, 0, 5));

Это предполагает, что вы хотите объединить несколько последовательных пробелов (например, foo bar) вместе (foo,bar).

1 голос
/ 24 сентября 2010

ммммм попробуйте это:

$string = "Bmw m3 fully equipped and low mileage";
$str = implode(',', explode(' ',$string,5));
echo substr($str,0,strpos($str, ' '));

не проверено, хотя ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...