[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите составить регулярку
Каретный


ниже исходные строки
$str = '#mytext# qwerty';
OR
$str = 'qwerty #mytext#';
OR
$str = 'qwerty #mytext# qwerty';
OR
$str = '#mytext#';

суть отловить все если строка не '#mytext#' а окружена текстом с одной или с другой стороны либо с обоих


preg_match('/(.*)?#mytext#(.*)?/',$str,$matches);





Спустя 1 минута, 39 секунд (29.03.2012 - 08:23) Игорь_Vasinsky написал(а):
дай исходную строку и что нужно поймать

Спустя 6 минут, 49 секунд (29.03.2012 - 08:29) Каретный написал(а):
Исходное поправил

Спустя 3 часа, 4 минуты, 35 секунд (29.03.2012 - 11:34) Каретный написал(а):
Кто тут смелый?

Спустя 10 минут, 55 секунд (29.03.2012 - 11:45) Игорь_Vasinsky написал(а):
занят был :lol: пробуй

 preg_match('#.*?(\#.*\#).*?#s', $string, $matches);

echo '<pre>' . print_r($matches, 1) . '</pre>';

Спустя 43 минуты, 43 секунды (29.03.2012 - 12:29) Каретный написал(а):
что-то не подходит никак.

$str1 = 'текст слева #a#mystring#/a# текст справа';
$str2 = 'текст слева #a#mystring#/a#';
$str3 = '#a#mystring#/a# текст справа';
$str4 = '#a#mystring#/a#';

надо чтоб было тру если строки 1-3 удовлетворяли регулярку, а 4 нет


$str = 'mystring';

preg_match('/'.$str.'/', $str*);

Спустя 29 минут (29.03.2012 - 12:58) Игорь_Vasinsky написал(а):
*? замени на +

Спустя 22 минуты, 48 секунд (29.03.2012 - 13:20) Winston написал(а):
Свернутый текст
$str1 = 'текст слева #a#mystring#/a# текст справа';
$str2 = 'текст слева #a#mystring#/a#';
$str3 = '#a#mystring#/a# текст справа';
$str4 = '#a#mystring#/a#';

$str = '#a#mystring#/a#';

preg_match('!(.*(?<=[а-яё\w ]))?' . $str . '(?(1)(.*(?=[а-яё ]))?|(.*(?=[а-яё\w ])))!iu', $str1, $match);

echo '<pre>'.htmlspecialchars(print_r($match, 1)).'</pre>';

Как то так?

Спустя 1 час, 54 минуты, 6 секунд (29.03.2012 - 15:15) Каретный написал(а):
Ок. Спасибо,

Спустя 1 час, 13 минут, 8 секунд (29.03.2012 - 16:28) killer8080 написал(а):
Свернутый текст
Какие необычные BB-коды rolleyes.gif

Спустя 13 часов, 59 минут, 48 секунд (30.03.2012 - 06:27) Каретный написал(а):
Цитата (Winston @ 29.03.2012 - 10:20)
Свернутый текст
$str1 = 'текст слева #a#mystring#/a# текст справа';
$str2 = 'текст слева #a#mystring#/a#';
$str3 = '#a#mystring#/a# текст справа';
$str4 = '#a#mystring#/a#';

$str = '#a#mystring#/a#';

preg_match('!(.*(?<=[а-яё\w ]))?' . $str . '(?(1)(.*(?=[а-яё ]))?|(.*(?=[а-яё\w ])))!iu', $str1, $match);

echo '<pre>'.htmlspecialchars(print_r($match, 1)).'</pre>';

Как то так?


А что значит (1) ?, можешь дать линк на описания подробные нужен ман.

Спустя 4 часа, 35 минут, 14 секунд (30.03.2012 - 11:03) Winston написал(а):
http://ruseller.com/lessons.php?rub=37&id=920
Раздел - "Шаблоны для условий (If-Then-Else)"

Спустя 1 час, 41 минута, 32 секунды (30.03.2012 - 12:44) Каретный написал(а):
о, тут проще все разжевано, респект винстон.
Быстрый ответ:

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