Articles of regex

Как получить правильную позицию списка в многобайтовой строке, используя preg_match

Я сейчас сопоставляю HTML с помощью этого кода: preg_match('/<\/?([az]+)[^>]*>|&#?[a-zA-Z0-9]+;/u', $html, $match, PREG_OFFSET_CAPTURE, $position) Он соответствует всем совершенным, однако, если у меня многобайтовый символ, он учитывает его как 2 символа при возвращении позиции. Например, возвращаемый массив $match даст что-то вроде: array 0 => array 0 => string '<br />' (length=6) 1 => int 132 1 => […]

PHP preg_replace () – Проблемы с памятью. Альтернатива?

На сайте, над которым я работаю, im конвертирует строки в пули, используя ответ в этом вопросе . Это работает, но я нахожу, что есть проблемы с утечкой памяти. Я провел некоторое исследование и обнаружил, что это просто ошибка в PHP. Существуют ли какие-либо альтернативы для выполнения чего-то типа струн? РЕДАКТИРОВАТЬ: Есть еще один интересный угол […]

php / as3 regex для разделения нескольких json в одном

Например, у меня есть эта строка из двух json-объектов: {"глоссарий": {"title": "example glossary"}, "aaa": "1212"} {"adada": "faka"} Я хочу разбить его в массиве для PHP и ActionScript 3 Array ( [0] => '{"glossary": {"title": "example glossary"}', [1] => '{"adada": "faka"}' ) Каков наилучший способ сделать это. Редактировать: Мне не нужно отвечать, как разбирать json. Чтобы […]

Необходимо предотвратить повторное выражение PHP regex

Почему следующий segfault и как я могу его предотвратить? <?php $str = ' <fieldset> <label for="go-to">Go to: </label> ' . str_repeat(' ', 10000) . '<input type="submit" value="Go" /> </fieldset> </form>'; preg_match_all("@ </?(?![bisa]\b)(?!em\b)[^>]*> # starting tag, must not be one of several inline tags (?:[^<]|</?(?:(?:[bisau]|em|strong|sup)\b)[^>]*>)* #allow text and some inline tags [\?\!\.]+ @ix", $str, $matches); ?> […]

Почему соответствует номерам и буквам?

Я хочу переменную, которая допускает letters and only не digits . И эта переменная может находиться в любой позиции в строке. Посмотри на это, $pattern = '~user/(:var)~'; $pattern = str_replace('(:var)', '([a-zA-Z])', $pattern); // Note, the variable contain both numbers and letters $test = 'user/dave123'; $r = preg_match($pattern, $test); var_dump($r); //1 Success (I don't want this) […]

Ошибка PHP preg_replace () с недопустимой точкой кода Unicode

У меня возникли проблемы с использованием стороннего API, который вызывает следующую ошибку PHP preg_replace(): Compilation failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 42 in /…/SoapClient.php on line 20 Может ли кто-нибудь помочь мне с пониманием того, что означает это регулярное выражение, [\x{0}-\x{8}\x{B}-\x{C}\x{E}-\x{1F}\x{D800}-\x{DFFF}] Это значение, которое оно пытается сопоставить 5f42caa3-1f41-4ff3-8b6c-3f79e45ed0f1 Это […]

Удалить все обратные косые черты из строки – php – regex

моя строка $str = '<img src="\"images/hai.jpg\"" alt="" /> Text <img src="\"images/hai.jpg\"" alt="" />'; Я хочу удалить все строки из строки.

htaccess получить разбиение на страницы с косой чертой

www.example.com/category/ .htaccess <Files .htaccess> order allow,deny </Files> Options +FollowSymLinks RewriteEngine On RewriteRule ^(\w+)/(.*)$ ./load.php?code=$1 RewriteRule ^(\w+)/*$ ./load.php?code=$1 load.php <?php $code = $_GET['code']; echo $code.'<br/>'; echo $_GET['page']; ?> www.example.com/category/ 16598 << это 'code' . его показ с php echo $_GET['code']; Но как показать 'page' www.example.com/category/16598/video-title/ 2 << это номер 'page' . Как показать с помощью php […]

PHP Regex: выберите все, кроме последнего вхождения

Я пытаюсь заменить все \n 's sans, что последний с \n\t , чтобы красиво отступать для рекурсивной функции. This that then thar these them должны стать: This that then thar these them Это то, что у меня есть: preg_replace('/\n(.+?)\n/','\n\t$1\n',$var); В настоящее время он выплевывает это: This that then thar these them Краткая информация: Нужно ли […]

Добавить текст в строку с использованием регулярного выражения (preg_replace: php) с ограниченными словами

У меня есть логическая строка поиска для сторонней службы поиска индексов: Germany or (Indian, Tech*) Я хочу, чтобы мой результат был после обработки: Germany[45] or (Indian[45], Tech*[45]) . Здесь 45 – это вес, необходимый службе поиска. После долгой работы я смог получить результат: Germany[45] or (Indian[45], Tech[45]*) . Здесь вы можете видеть, что * появился […]