Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подсчет символов в строке без пробелов. 
V
    Опции темы
Alix36
Дата 16.12.2008, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



Переменная из массива _POST содержит  пробелы и символы.
Как подсчитать количество символов в строке?
Пробывал так. 
Код

$s = str_replace(" ", "", $_POST['text']);
    $s = str_replace(" ", "", $s);
    $s = str_replace("%20", "", $s);
    $s = preg_replace ("/\s/", "", $s);
    $story=strlen($s);
 
В итоге с пробелами ничего не происходит. 
И считаются ВСЕ символы и Все пробелы.

В чем я не прав?


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
s0lman
Дата 16.12.2008, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



Код

$s =trim($_POST['text']);
$story=strlen($s);


Добавлено через 54 секунды
Поспешил слегка)

Добавлено через 5 минут и 1 секунду
Код

$s =trim($_POST['text']);
$stg = str_replace(' ','',$s);
$story=strlen($stg);


так  не работает?


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
Alix36
Дата 16.12.2008, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



магия,не работает,
Можетт траблы в кодировке?


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
s0lman
Дата 16.12.2008, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



Цитата(Alix36 @  16.12.2008,  21:46 Найти цитируемый пост)
магия,не работает

Я проверил код - у меня работает...  Я не догадываюсь, в чем проблема

Цитата(Alix36 @  16.12.2008,  21:46 Найти цитируемый пост)
Можетт траблы в кодировке? 

А если не кириллица?


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
Alix36
Дата 16.12.2008, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



все равно, причем один пробел считается за 2 символа.


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
s0lman
Дата 16.12.2008, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



Хорошо, результирующая строка равна исходной?  $s==$stg ?
 


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
Alix36
Дата 16.12.2008, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



Равна

Может стоит подойти по другому.

Есть функция, считающая только символы из определенного алфавита?

Это сообщение отредактировал(а) Alix36 - 16.12.2008, 22:45


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
s0lman
Дата 16.12.2008, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



Цитата(Alix36 @  16.12.2008,  22:43 Найти цитируемый пост)
нет, не равна.

Например? Что было и что стало?


Цитата(Alix36 @  16.12.2008,  22:43 Найти цитируемый пост)
Есть функция, считающая только символы из определенного алфавита? 

Я такой не знаю  smile


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
Alix36
Дата 16.12.2008, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



если в строке есть символ и куча пробелов, строки не равны, хотя если сравнивать в ручную, одинаковы.
если в строке только пробелы строки равны.


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
solenko
Дата 16.12.2008, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



Alix36, у вас что, строка в utf16? 
попробуйте нечто вроде
Код

mb_strlen(mb_ereg_replace('/\s/', '', $_POST['text']))



--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Alix36
Дата 16.12.2008, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



нет, так за любую строку возвращает 2


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
Alix36
Дата 17.12.2008, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



Уже запутался в коде. 
Возвращает все правильно, НО пробел все равно считается за символ.


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
Валерия
Дата 17.12.2008, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

Репутация: 3
Всего: 8



var_dump($_POST['text'])

Может у тебя юникод?
 smile 
PM MAIL   Вверх
DeamonShan
Дата 18.12.2008, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



а может вовсе отсутствуют эти пробелы?
PM MAIL   Вверх
Рыжий
Дата 18.12.2008, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Помешанный
***


Профиль
Группа: Завсегдатай
Сообщений: 1423
Регистрация: 19.9.2004

Репутация: 2
Всего: 20



Alix36, Скорее всего, на страничках перед php кодом вставить этот мета тег:
Код

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    

(Вставлять в <head>)
И все файлы перекодировать в utf-8 (открыть блокнотом->"Сохранить как"->"Кодировка - UTF-8")

PS и попробую в разных раскладках кириллица/латиница
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0526 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.