![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Нужно сосчитать количество больших букв и елси оно больше 10, то перевести их в нижний регистр.
Просто найти болшую букву: ereg('[A-ZА-Я]',$string,$array); Могу придумать как заменить большие буквы на маленькие: preg_replace(range('A', 'Z'),range('a', 'z'),$string); preg_replace(range('А', 'Я'),range('а', 'я'),$string); А вот как посчитать количество больших букв? |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
И ещё в тему: "как посчитать количесво одинаковых сомволов стоящих подряд".
|
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Попробуй
$text = ereg_replace("([A-Z]{10, 1000000})", strtolower("\1"), $text); -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Secandr |
|
||||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Вот написал:
|
||||
|
|||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Вот подправил:
А если поставить A B C D E F G H I J K L M N O P - вообще неработает. Это сообщение отредактировал(а) Secandr - 13.1.2004, 12:02 |
|||
|
||||
Unregistered |
|
|||
Unregistered |
Тогда надо сначало нйти все вхождения, изменить их, а потом заменить. Но это ИМХО тормозно получится ...
|
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
мне просто нужно посчитать количество символов A-Z и А-Я
|
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
вопрос:
perevsti все, которых больше 10 или перевести все? |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Лучше все.
|
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
preg_match_all("/[A-Z]/",$string,$matches);
if(count($matches[0])>10) $string = strToLower($string); |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Dimetrius сенкс.
Всё работает ![]() Это сообщение отредактировал(а) Secandr - 13.1.2004, 16:22 |
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
на здоровье :-)
|
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
А как насчёт поиска символов стоящих подряд?
Как определить сколько таких? |
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
первое правило любого поиска - нужно знать что ищешь
![]() "как посчитать количество одинаковых символов стоящих подряд" - звучит расплывчато. например, "ааббббббббввввввв" - что считать будем? Если можно, в кратце - а зачем тебе это нужно? |
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Dimetrius, это видимо либо для форума, либо для чата
![]() -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
ты имеешь в виду, что нужно, например, заменить "аааббббввв" на "абв"?
|
|||
|
||||
IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Dimetrius, я не знаю что ему нужно именно, это мое предположение ... но я бы не стал менять ааабббввв на абв ...
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Iz@top Это для чата. Заказчик начал выкидывать "гениальные" идеи которых небыло в ТЗ
![]() ![]() Нужно определить максимальное количество одинаковых букв идущих подряд и в случае если их количество меньше 10(например) внести сообщение в БД, если больше - послать хользователя. Т.е. Если имеем сообщение: "Помогите! Аааааааа !!!!" - пробускаем, если: "б ааааааааааааааааааааа б" - убиваем. |
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
$MyNewString = str_replace(" ","",$string);
if(!preg_match("/[^0-9])(\1){10,}/",$MyNewString)) echo $string; else echo "флууууддддд"; |
|||
|
||||
MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: 7 Всего: 32 |
if(!preg_match("/[^0-9])(\\1){10,}/",$MyNewString)) echo $string;
-------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
сенкс
|
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
Ха-Ха-Ха...
ну мы с тобой молодцы, МуТоГен :-) на самом деле, еще нужно одну скобку впереди поставить :-) я писал просто из головы, навскидку и не проверил...сорри это точно работает: if(!preg_match("/( [^0-9])(\\1){10,}/",$MyNewString)) echo $string; |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Неработает: выводит sdddddd dd ddddddddddd ddddddddddddddddddddddddddddd dddddds |
|||
|
||||
Dimetrius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 12.1.2004 Репутация: 1 Всего: 1 |
ты один "\" пропустил
if(!preg_match("/([^0-9])(\\ 1){10,}/",$MyNewString)) echo $string; |
|||
|
||||
Secandr |
|
|||
![]() Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: 5 Всего: 39 |
Всё работает
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |