Php как подсчитать количество слов в строке
привет есть код:
Количество слов в строке = " ,$b ;
?>
чем заменить ф-ю str_word_count чтобы посчитать количество слов в строке.
можно конечно считать пробелы, но как это сделать и как удалить множественные пробелы?
обрабатываю строку: Съешь ещё этих мягких французских булок, да выпей чаю.
Количество слов в строке = " ,$b ;
?>
$a=$_GET['a'];
echo $a;
$b=str_word_count($a);
echo "Количество слов в строке = " ,$b ;
Собственно ответ!! !
$a= "Съешь ещё этих мягких французских булок, да выпей чаю. ";
$a = preg_replace('/ {2,}/',' ',$a); //удаляем из исходной строки лишние пробелы
echo "Текст без пробелов: ".$a;
$b=split(" ",$a); //считаем количество пробелов
echo "Количество слов в строке = " ,sizeof($b) ; //без комментариев
Всем спасибо, все свободны=))))))))
Молодец, ты сам смог найти правильный ответ)) )
вот улучшение -
$a = $_GET['a'];
$a = preg_replace('/ {2,}/',' ',$a); //удаляю лишние пробелы в тексте
$a = ltrim($a," "); //удаляю пробел в начале строки
$a = rtrim($a," "); //удаляю пробел в конце строки
echo "Текст без пробелов: a = $a";
$a = split(" ",$a); //считаю количество слов разделенных пробелами
echo "Количество слов в строке = " ,sizeof($a) ;
sizeof(preg_split('/\s+/', $your_string))
Разбей на подзадачи:
3 фунции
первая главная, она же вызывает вторую, которая ищет пробелы больше 1 подряд
третья функция обрабатывает результат второй и считает кол-во одинарных пробелов
ну и третья -контейнер вовзращает что надо
пример:
function getWordsCount($s){
$s=$this->remMspaces($s);
return $this->getSpacesCount($s);
}