Articles of preg match

Совместимость с PHP preg_match в Python

Я планирую перенести один из моих скребок на Python. Мне удобно использовать preg_match и preg_match_all в PHP. Я не нашел подходящую функцию в Python, похожую на preg_match . Может ли кто-нибудь помочь мне в этом? Например, если я хочу получить контент между <a class="title" и </a> , я использую следующую функцию в PHP: preg_match_all('/a class="title"(.*?)<\/a>/si',$input,$output); […]

Дополнительные группы Regex?

Кажется, я запутался в регулярном выражении preg_match, которое я делаю, поэтому будут внимательны свежие глаза и помощь. Мое текущее регулярное выражение выглядит следующим образом: /<!–menu:start:\(([0-9])\,([0-9])\)–>(.*?)<!–menu:end–>/se Я хочу сделать ввод количества и двоеточие, например: (1,4) необязательно, поэтому он будет соответствовать: <!–menu:start–><!–menu:end–> или <!–menu:start:(0,3)–><!–menu:end–>

Regex для любого английского символа ASCII, включая специальные символы

Я хочу написать регулярное выражение в php для соответствия только любым английским символам, пробелам, номерам и всем специальным символам. Из этого вопроса Regex любой символ ascii Я попробовал это preg_match("/[\x00-\x7F]+/", $str); но он выдает предупреждение No ending delimiter '/' found поэтому, как написать это регулярное выражение в php. альтернативой было бы что-то вроде [az \ […]

Как заменить только последнее совпадение строки с preg_replace?

Я должен заменить последнее соответствие строки (например, слово foo) в документе HTML. Проблема в том, что структура HTML-документа всегда случайна. Я пытаюсь выполнить это с помощью preg_replace, но до сих пор я знаю, как заменить только первое совпадение, но не последнее. Благодарю.

Получить данные только из таблицы html, используемой preg_match_all в php

У меня есть таблица html: <table … > <tbody … > <tr … > <td …> string… </td> <td …> string… </td> <td …> string… </td> <td …> string… </td> <td …> string… </td> </tr> <tr … > <td …> string… </td> <td …> string… </td> <td …> string… </td> <td …> </td> <td …> […]

Любой preg_match, чтобы проверить, является ли URL-ссылка для youtube / vimeo / dailymotion?

Каков наилучший синтаксис preg_match, чтобы проверить, является ли url ссылкой на видео youtube / vimeo / или dailymotion? может быть, если это сложно, просто проверьте доменное имя. благодаря

Преобразовать устаревшие eregi / ereg / ereg_replace в preg_match или другой эквивалент

Сегодня я публикую сайт на новом домене и новом хостинг-провайдере, но получаю обесцененные предупреждения в некоторых строках кода. Я плохо разбираюсь в материалах preg, но, может быть, кто-нибудь поможет мне преобразовать его в эквивалентный код preg_match? Вот несколько строк кода: /* 1 */ $b = ( eregi( "^https?://(.*).$sDomainName/", $q ) || eregi( "^https?://$sDomainName/", $q )); […]

preg_match и (не английские) латинские символы?

У меня есть форма XHTML, где я прошу людей ввести полное имя. Затем я сопоставляю это с preg_match() используя этот шаблон: /^[\p{L}\s]+$/ На моем локальном сервере под управлением PHP 5.2.13 (PCRE 7.9 2009-04-11) это работает отлично. На веб-хосте под управлением PHP 5.2.10 (PCRE 7.3 2007-08-28) он не совпадает, когда введенная строка содержит датский латинский символ […]

Разделить строку на текст и номер

У меня есть строки, которые могут быть в следующем формате текст sometext moretext 01 текст sometext moretext 002 текстовый текст 1 (somemoretext) и т.д Я хочу разбить эти строки следующим образом: текст перед номером и номером Например: текстовый текст 1 (somemoretext) Когда split будет выводиться: text = текстовый текст число = 1 Что-то после номера […]

Символы preg_quote регулярного выражения не обнаружены

У меня есть словарь ругательных слов в базе данных, и следующее отлично работает preg_match_all("/\b".$f."(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER); $t – входной текст и просто $f = preg_quote("punk") ; "punk" – это словарь базы данных, поэтому в этой точке цикла выражение выглядит следующим образом preg_match_all("/\bpunk(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER); preg_quote заменяет символы, например. # с \\# чтобы выражение было экранировано, но когда словарь проверяет, […]