Я пробовал несколько различных экземпляров, и я просто не могу понять, что это правильно, так что мы можем надеяться, что другие могут помочь в этом проекте.Регулярное выражение для значения в URL-адресе - Скрининг экрана
Работает на проекте scrape на основе PHP.
Я хотел, чтобы захватить «5094151» из ниже URL:
http://www.test.com/item/11-x-17-1-1-2-Gold-Distressed-Picture-Frame-11101202-5094151
Имейте в виду, что это число «5094151» представляет собой номер позиции, для элемента листинга, так что каждый адрес будет быть разными, и цифры могут отличаться по размеру. Например, длина этого номера может быть 4 цифры, это может быть 7, это может быть 10.
Я ищу функцию preg_match, которая может дать мне это число.
Любая помощь будет очень признательна!
Я, вероятно, должен уточнить немного больше ...Я использую функцию scrape на основе php, которая «закручивает» URL-адреса со страницы ... Предыдущий метод: [code] preg_match_all ('~ "(http://www.test.com/item/[^"] +) «~ is», $ index, $ matches); [/ code], который больше не работает, конечно, так как разметка изменилась, чтобы выглядеть как url как исходный, поэтому я ищу правильный метод для обновления этого конкретного – cwbray
Вы говорите, что хотите получить все * «номера позиций» * от URL-адреса, а не только от последнего? – ndn
Что мы делаем, это загрузка страницы, проверка наличия каких-либо ссылок, и если да, загрузите их Пример:
$ url = ((int) $ page == $ page)? $ base_url. '? page = profile & pg ='. $ page. '& profile_username ='. $ username: $ page; $ index = $ curl-> fetch_url ($ url, $ post, $ cur_ip); // детализированные URL-адреса и категории preg_match_all ('~ "(http://www.test.com/item/[^"] +) "~ is', $ index, $ matches); foreach ($ matches [1] as $ key => $ value) { $ ret [$ value] = $ value; } – cwbray