Articles of regex

PHP – функция поиска ссылок в тексте

У меня есть функция, которая преобразует строки, такие как «www.example.com» и « http://example.com » в гиперссылки. Он также касается субдоменов, например « http://sub.example.com ». Но это не удается с этим – http: // www .example.com 'и выводит следующие <a href="http://<a href="http://www.chemica.ru">www.chemica.ru</a>">http://<a href="http://www.chemica.ru">www.chemica.ru</a></a> Пожалуйста, может кто-нибудь помочь? Проблема в том, что и «http: //», и «www». […]

Как запустить это регулярное выражение на PHP, которое анализирует полный адрес электронной почты с именем?

У меня есть это регулярное выражение: ^((?>[a-zA-Z\d!#$%&'*+\-/=?^_`{|}~]+\x20*|"((?=[\x01-\x7f])[^"\\]|\\[\x01-\x7f])*"\x20*)*(?<angle><))?((?!\.)(?>\.?[a-zA-Z\d!#$%&'*+\-/=?^_`{|}~]+)+|"((?=[\x01-\x7f])[^"\\]|\\[\x01-\x7f])*")@(((?!-)[a-zA-Z\d\-]+(?<!-)\.)+[a-zA-Z]{2,}|\[(((?(?<!\[)\.)(25[0-5]|2[0-4]\d|[01]?\d?\d)){4}|[a-zA-Z\d\-]*[a-zA-Z\d]:((?=[\x01-\x7f])[^\\\[\]]|\\[\x01-\x7f])+)\])(?(angle)>)$ Который предположил бы разобрать полную электронную почту с именем и всем, я не мог заставить его работать на PHP, пожалуйста, помогите? Вот что я пробовал: $test = "Joe Doe <doe@example.com>"; $emailRegex = '@^((?>[a-zA-Z\d!#$%&\'*+\-/=?^_`{|}~]+\x20*|"((?=[\x01-\x7f])[^"\\]|\\[\x01-\x7f])*"\x20*)*(?<angle><))?((?!\.)(?>\.?[a-zA-Z\d!#$%&\'*+\-/=?^_`{|}~]+)+|"((?=[\x01-\x7f])[^"\\]|\\[\x01-\x7f])*")@(((?!-)[a-zA-Z\d\-]+(?<!-)\.)+[a-zA-Z]{2,}|\[(((?(?<!\[)\.)(25[0-5]|2[0-4]\d|[01]?\d?\d)){4}|[a-zA-Z\d\-]*[a-zA-Z\d]:((?=[\x01-\x7f])[^\\\[\]]|\\[\x01-\x7f])+)\])(?(angle)>)$@'; preg_match($emailRegex, $test, $curResult); print_r($curResult);

Замените новые строки тегами BR, но только внутри тегов PRE

На складе PHP5, что является хорошим выражением preg_replace для создания этого преобразования: замените символы новой строки на <br /> , но только внутри <pre> блоков (Не стесняйтесь делать упрощающие предположения и игнорируйте угловые случаи. Например, мы можем предположить, что теги будут одной строкой, а не такими патологическими вещами, как) Текст ввода: <div><pre class='some class'>1 2 […]

Санитация регулярных выражений, добавленных пользователем в PHP

Я хочу создать сайт, на котором пользователи могут тестировать регулярные выражения (их уже много … например, это: http://www.pagecolumn.com/tool/pregtest.htm ). В принципе, пользователь предоставляет регулярное выражение и некоторый образец текста, и результаты оценки регулярного выражения будут возвращаться обратно. Я хочу оценить регулярное выражение на стороне сервера с помощью функций PHP preg_ *. Есть ли способ дезинфицировать […]

Извлечь часть из URL-адреса для строки запроса

Мне нужна определенная часть URL-адреса. Пример: http://www.domain.com/blog/entry-title/?standalone=1 – данный URL. blog/entry-title должен быть извлечен. Однако извлечение должно также работать с http://www.domain.com/index.php/blog/[…] в качестве заданного URL-адреса. Этот код предназначен для системы управления контентом. Я уже придумал следующее: function getPathUrl() { $folder = explode('/', $_SERVER['SCRIPT_NAME']); $script_filename = pathinfo($_SERVER['SCRIPT_NAME']); // supposed to be 'index.php' $request = explode('/', $_SERVER['REQUEST_URI']); […]

php regex для соответствия вне html-тегов

Я делаю preg_replace на странице html. Мой шаблон предназначен для добавления окружающего тега к некоторым словам в html. Однако иногда мое регулярное выражение изменяет теги html. Например, когда я пытаюсь заменить этот текст: <a href="example.com" alt="yasar home page">yasar</a> Так что yasar читает <span class="selected-word">yasar</span> , мое регулярное выражение также заменяет yasar в атрибуте alt тэга […]

«Вертикальное» соответствие регулярных выражений в ASCII «изображении»

Примечание. Это вопрос о возможностях современных ароматизаторов регулярных выражений. Речь идет не о лучшем способе решения этого, используя другие методы. Это вызвано более ранним вопросом , но это не ограничивается регулярным выражением. Проблема В ASCII «image» / art / map / string, например: ….X……. ..X..X…X…. XX..X..X….. X….XXXXXX….. X..XXX……….. …..X………. …………..X ..X………..X…. ..X………..X….X… ….X….. Я хотел […]

Размытие строки одним или несколькими пробелами или вкладками

Как я могу взорвать строку одним или несколькими пробелами или вкладками? Пример: ABCD Я хочу сделать это массивом.

Альтернативные альтернативы lookback для альтернативных регулярных выражений

Есть ли реализация регулярных выражений в Python / PHP / JavaScript, которая поддерживает переменную длину lookbehind-assertion? /(?<!foo.*)bar/ Как я могу написать регулярное выражение, имеющее то же значение, но не использующее lookbehind-assertion? Есть ли вероятность, что этот тип утверждения будет реализован когда-нибудь? Вещи намного лучше, чем я думал. Обновить: (1) Есть реализация регулярных выражений, которые уже […]

Проверка записей Crontab с PHP

Каков наилучший способ проверки записи crontab с помощью PHP? Должен ли я использовать регулярное выражение или внешнюю библиотеку? У меня есть PHP-скрипт, который добавляет / удаляет записи из файла crontab, но хочет иметь некоторый способ проверить, что часть интервала времени находится в допустимом формате.