Articles of preg match all

Regex соответствует строке между%

Я пытаюсь сопоставить подстроки, заключенные в%, но preg_match_all кажется, включает несколько одновременно в одной строке. Код выглядит следующим образом: preg_match_all("/%.*%/", "%hey%_thereyou're_a%rockstar%\nyo%there%", $matches); print_r($matches); Который производит следующий вывод. Array ( [0] => Array ( [0] => %hey%_thereyou're_a%rockstar% [1] => %there% ) ) Однако я хотел бы, чтобы он создал следующий массив: [0] => %hey% [1] => […]

PHP: Как получить строковые индексы preg_match_all?

скажем, у меня два регулярных выражения, /eat (apple|pear)/ /I like/ и текст "I like to eat apples on a rainy day, but on sunny days, I like to eat pears." Я хочу получить следующие индексы с preg_match: match: 0,5 (I like) match: 10,19 (eat apples) match: 57,62 (I like) match: 67,75 (eat pears) Есть ли […]

Как получить текст в массиве между всеми тегами <span> из HTML?

Я хочу получить текст в массиве между всеми тегами <span> </span> из HTML, я попытался с этим кодом, но он возвращает только одно событие: preg_match('/<span>(.+?)<\/span>/is', $row['tbl_highlighted_icon_content'], $matches); echo $matches[1]; Мой HTML: <span>The wish to</span> be unfairly treated is a compromise attempt that would COMBINE attack <span>and innocen</span>ce. Who can combine the wholly incompatible, and make […]

Как разобрать текст с ключом по столбцу с возможными многострочными строками

Мне нужно разобрать следующий текст: First: 1 Second: 2 Multiline: blablablabla bla2bla2bla2 bla3b and key: value in the middle if strting Fourth: value Значение представляет собой строку ИЛИ многострочную строку, в то же время значение может содержать подстроку «key: blablabla». Такое subsctring следует игнорировать (не анализироваться как отдельная пара ключ-значение). Помогите мне с регулярным выражением […]

Regex – PHP Lookaround

У меня есть строка, например: $foo = 'Hello __("How are you") I am __("very good thank you")' Я знаю, что это странная строка, но оставайтесь со мной, пожалуйста: P Мне нужно выражение регулярного выражения, которое будет искать содержимое между __ («Ищите контент здесь») и поместите его в массив. т.е. регулярное выражение найдет «Как ты» и […]

preg_match_all в простой массив

У меня есть функция preg_match_all: preg_match_all('#<h2>(.*?)</h2>#is', $source, $output, PREG_SET_ORDER); Он работает так, как планировалось, но проблема в том, что он preg_matches все элементы дважды и в огромный многомерный массив, как это, например, где он, как и предполагалось, preg_matched все 11 элементов, но два раза и в многомерный массив: Array ( [0] => Array ( [0] […]

Найти всю строку, содержащую слово с регулярными выражениями php

Я хочу найти слово «сеанс» в тексте. Но я хотел бы получить всю строку, в которой появляется это слово. До сих пор я придумал это. $pattern="[^\\n]*session[^\\n]*"; preg_match_all($pattern,$content, $matches, PREG_OFFSET_CAPTURE); Но я получаю сообщение об ошибке «Неизвестный модификатор * *». Есть идеи, как сделать такое регулярное выражение?

preg_replace изменить ссылку с href

Мне нужно заменить URL-адреса на странице, сделанной curl, и добавить правильную ссылку на изображения и ссылки. Мой php curl-код: <?php $result = '<a href="http://host.org"><img src="./sec.png"></a> <link href="./styles.css" rel="alternate stylesheet" type="text/css" /> <script type="text/javascript" src="./style.js"></script>'; echo $result; if (!preg_match('/src="https?:\/\/"/', $result)) { $result = preg_replace('/src="(http:\/\/([^\/]+)\/)?([^"]+)"/', "src=\"http://google.com/\\3\"", $result); } echo $result; if (!preg_match('/href="https?:\/\/"/', $result)) { $result = preg_replace('/href="(http:\/\/([^\/]+)\/)?([^"]+)"/', […]

preg_match_all – регулярное выражение для поиска полных URL-адресов в строке

Я потратил более 4 часов, пытаясь найти регулярное выражение для моего php-кода без везения. У меня есть строка с html-кодом. В нем много форматов URL-адресов: site*com http://site*com http://www*site*com http://site*com/some.php http://site*om/some.php?var1=1 http://site*com/some.php?var1=1&var2=2 etc. У меня есть следующий PHP-код: preg_match_all('/\b(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)[-A-Z0-9+&@#\/%=~_|$?!:,.]*[A-Z0-9+&@#\/%=~_|$]/i', $content, $result, PREG_PATTERN_ORDER); Единственное, что мне нужно, это ТАКЖЕ убрать URL-адреса с несколькими строками запросов, используя «&» […]

Получение первого изображения в строке с php

Я пытаюсь получить первое изображение с каждого из моих сообщений. Этот код ниже отлично работает, если у меня есть только один образ. Но если у меня больше, чем один, это дает мне образ, но не всегда первый. Мне действительно нужен только первый образ. Много раз второе изображение представляет собой следующую кнопку $texthtml = 'Who is […]