Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB58.6150
BTC/USD0.0000
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 21.05.2010, 19:23   #1
Suerte
начинаю работать
 
Регистрация: 23.12.2009
Сообщений: 214
Бабло: $74800
По умолчанию подскажите простую регулярку

нужно выдернуть содержимое из переменной

там такой текст

: 56%

так вот нужно выдернуть только число
Suerte вне форума  
Старый 21.05.2010, 19:30   #2
seeker
Ебланнед
 
Регистрация: 07.04.2010
Сообщений: 1,577
Бабло: $0
По умолчанию

регулярки в разных языках по-разному пишутся
папа регулярок - perl
для него так:
Код:
/\:(\d+?)\%/g
твоё число будет в переменной $1

P.S. на всяк.случай заэкранировал : и %
seeker вне форума  
Старый 21.05.2010, 19:31   #3
Suerte
начинаю работать
 
Регистрация: 23.12.2009
Сообщений: 214
Бабло: $74800
ТС -->
автор темы ТС По умолчанию

забыл сказать
нужно для PHP
Suerte вне форума  
Старый 21.05.2010, 19:39   #4
cepB
Member
 
Регистрация: 10.10.2009
Сообщений: 41
Бабло: $14400
По умолчанию

PHP код:
$text='adsasd dasad: 56%dfgdfg';
preg_match('#: (.+?)%#',$text,$ololo);
echo 
$ololo[1]; 
cepB вне форума  
Старый 21.05.2010, 19:40   #5
sergeospb
коплю на феррари
 
Регистрация: 03.07.2008
Сообщений: 1,262
Бабло: $148195
По умолчанию

(?<=(\:\ ))[\d]{2}(?=%)
- (?<=(\:\ )) - здесь мы проверяем, что впереди есть двоеточие с пробелом, но не включаем в результат
- (?=%) - здесь наличие знака % в конце, в результат тоже не включаем
тестирую всегда тут - http://myregexp.com/
во.

Последний раз редактировалось sergeospb; 21.05.2010 в 19:51.
sergeospb вне форума  
Старый 21.05.2010, 19:46   #6
jarosek
jaros
 
Аватар для jarosek
 
Регистрация: 10.05.2009
Адрес: Киев
Сообщений: 1,438
Бабло: $208530
Отправить сообщение для jarosek с помощью ICQ
По умолчанию

вуд
jarosek вне форума  
Старый 22.05.2010, 01:24   #7
seoengineer
Senior Member
 
Регистрация: 17.01.2009
Сообщений: 539
Бабло: $62555
По умолчанию

/:\s*(\d+)\%/
seoengineer вне форума  
Старый 22.05.2010, 01:24   #8
seoengineer
Senior Member
 
Регистрация: 17.01.2009
Сообщений: 539
Бабло: $62555
По умолчанию

Цитата:
Сообщение от sergeospb Посмотреть сообщение
(?<=(\:\ ))[\d]{2}(?=%)
- (?<=(\:\ )) - здесь мы проверяем, что впереди есть двоеточие с пробелом, но не включаем в результат
- (?=%) - здесь наличие знака % в конце, в результат тоже не включаем
тестирую всегда тут - http://myregexp.com/
во.
5%
seoengineer вне форума  
Старый 23.05.2010, 17:33   #9
Suerte
начинаю работать
 
Регистрация: 23.12.2009
Сообщений: 214
Бабло: $74800
ТС -->
автор темы ТС По умолчанию

cepB, спасибо рабоает)

а подскажите еще как выдергать все линки на странице, чтобы в линке присутствовало
/business/realty/
Suerte вне форума