[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: вопрос о функцие preg_match()
dadli
здраствуите пхписти,
я хачу што "остоновитъ" такую переменную, котории содержит 2 или болше одинаковые спецсимболи, допустим знаки плюса,
пишу так:

<?php

if (preg_match("/[+]{2,}/", $aaa)) {
exit("slova soderjit 2 ili bolshe znaki pliusa");
}

?>



но совпадение происходит толко в том случе, если переменная $aaa содержит знаки плюса подряд, совпадение происходит в том случе если:

$aaa = "slova++";

или

$aaa = "slo++va";


но совпадение не происходит если переманная $aaa содержит знаки плюса не подряд, допустим в таком виде:

$aaa = "slo+va+";

или

$aaa = "s+lov+a";


как надо написат функцю preg_match() так, што совпадение происходилос в том случе если переменная $aaa содержит знаки плюса не подряд?
спасибо вам и извините за мои неупорядоченный руски.



Спустя 42 минуты, 41 секунда (19.05.2011 - 10:56) Riddick написал(а):
Можно так попробовать:


<?php

if (preg_match("#[+]#", $aaa, $matches)) {

if(count($matches) > 1){
exit("slova soderjit 2 ili bolshe znaki pliusa");
}
}


?>


Только посмотри что будет в массиве $matches.

Спустя 18 минут, 39 секунд (19.05.2011 - 11:14) dadli написал(а):
Riddick, пачемута не работает

Спустя 1 минута, 40 секунд (19.05.2011 - 11:16) inpost написал(а):
~+.*+~

Модификаторы: iusU

Если что, экранизируй плюс smile.gif

Спустя 14 минут, 5 секунд (19.05.2011 - 11:30) dadli написал(а):
inpost если можно вся функцю написат, я 4 дня начал изучат регулярки и мне не так просто ето понимат smile.gif

Спустя 1 минута, 12 секунд (19.05.2011 - 11:31) inpost написал(а):
"#+.*+#iusU"

Спустя 10 минут, 41 секунда (19.05.2011 - 11:42) dadli написал(а):
спасибо тебе inpost

Спустя 56 минут, 53 секунды (19.05.2011 - 12:39) Invis1ble написал(а):
inpost
а модификатор i зачем? tongue.gif

dadli
#+.*+#usU

Спустя 30 минут, 20 секунд (19.05.2011 - 13:09) inpost написал(а):
Invis1ble
iusU звучит прикольнее, чем usU !

Спустя 14 минут, 46 секунд (19.05.2011 - 13:24) Rand написал(а):
Без регулярки проще:
if(substr_count($aaa, '+') > 1) {
echo "Строка содержит больше двух знаков +";
}

Или, если кодировка utf:
if(mb_substr_count($aaa, '+') > 1) {
echo "Строка содержит больше двух знаков +";
}



_____________


когда чарли чаплин принимал участие в конкурсе: "клон чарли чаплинов", то чарли занимал третю позицию.

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.