|
|
|
| Добрый день, у меня есть текст вида:
2,7,8,9,10,0,23,12,13,14,15,16,1,18,19,17,3,21
|
И мне нужно, чтобы я мог узнать есть ли тут например значение "2" в списке, к сожелению у меня всегда получаеться только, то что он видет и все 23, 21 и т.п. где есть "2"... Как бы это реализовать? | |
|
|
|
|
|
|
|
для: RaiDeRz
(25.11.2008 в 11:37)
| | Вы хотите решить проблему именно при при помощи регулярных выражений? Если нет, то можно воспользоваться следующий решением
<?php
// Исходная строка
$str = "2,7,8,9,10,0,23,12,13,14,15,16,1,18,19,17,3,21";
// Разбиваем строку в массив
$arr = explode(",", $str);
// Проверяем наличие числа 2
if(in_array(2, $arr)) echo "Число 2 присутствует";
else echo "Число 2 отсутсвует";
?>
|
| |
|
|
|
|
|
|
|
для: RaiDeRz
(25.11.2008 в 11:37)
| | наверное explode()
и проверка значения
in_array()
Выражениями не очень прямо получается
<pre><?
$txt = '2,7,8,9,10,0,23,12,13,14,15,16,1,18,19,17,3,21';
preg_match_all('#(?:,|^)2(?:,|$)#', $txt, $out);
print_r($out);
?>
|
| |
|
|
|
|
|
|
|
для: xx77
(25.11.2008 в 12:11)
| | Спасибо, все конечно хорошо, но тока забыл сказать, что это надо бы на posix реализовать.... я это просто в MySQL запросе RLIKE использую..... | |
|
|
|
|
|
|
|
для: RaiDeRz
(25.11.2008 в 14:42)
| | в MySQL есть функция FIND_IN_SET()
Именно для этой цели. | |
|
|
|
|
|
|
|
для: Trianon
(25.11.2008 в 15:28)
| | полезная функция =)) спасибо, не знал )) очень на самом деле помогает, чтобы не делать всякие крос таблицы =) | |
|
|
|
|