|
|
|
| Здравствуйте!
Вопрос такой, есть ли встроенные средства для проверки строки на наличие больших слов, т.е. когда пробел забывают\не хотят ставить? | |
|
|
|
|
|
|
|
для: Byte
(06.10.2004 в 17:53)
| | Est' kto givoy? :) | |
|
|
|
|
|
|
|
для: Byte
(06.10.2004 в 18:31)
| | Живые думают.
Ну как нибудь вот так.
<?
// $num - максимальное число символов в слове
$num=20;
// строка, которую проверяем
$str="sfesf hsfhsjfhs fghsfgs hgfhsgfh jsgfhjsgf dhjsdf";
$start=0;
$end=strlen($str);
$pos=1;
while($pos)
{
$pos = strpos($str, " ", $start+1);
if (($pos-$start)>$num)
{
echo "Слишком длинная строка";
exit();
}
$start=$pos;
}
echo "Нормальная строка";
?>
|
| |
|
|
|
|
|
|
|
для: Byte
(06.10.2004 в 18:31)
| | я тебе посоветую не писать вот это
>Est' kto givoy? :)
а просто поднимать сообщение вверх например вот так :))))) | |
|
|
|
|
|
|
|
для: LimP
(06.10.2004 в 19:26)
| | Спасибо за совет(ы) | |
|
|
|
|
|
|
|
для: Byte
(06.10.2004 в 17:53)
| | Ну можно, так, только мне этот вариант не очень нравится...
<?php
// Проверяем сообщение на слишком длинные слова
$lenmsg = strlen($msg);
$templen = 0;
$temp = strtok($msg, " ");
if (strlen($msg)>60)
{
while ($templen < $lenmsg)
{
if (strlen($temp)>60)
{
$action = "";
$error = $error."<LI>Текст сообщения содержит слишком много символов без пробелов\n";
break;
}
else
{
$templen = $templen + strlen($temp) + 1;
}
$temp = strtok(" ");
}
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(06.10.2004 в 21:54)
| | Да, я понимаю , что много способов реализовать данную задачу можно придумать,
я просто надеялся на существование какой-нибудь готовой функции. Ну, а вообще,
уже решил вопрос этот, но все равно спасибо, чем больше алгоритмов тем лучше :). | |
|
|
|