Я ищу способ проверить, существует ли точное соответствие строк в другой строке с использованием Regex или любого лучшего предложенного метода. Я понимаю, что вы указываете регулярное выражение в соответствии с пробелом или любым другим символом, отличным от слова, в начале или в конце строки. Тем не менее, я точно не знаю, как его настроить. Строка […]
<?php $language = $_SERVER['HTTP_ACCEPT_LANGUAGE']; echo $language; ?> Когда я использую Firefox для проверки этого блока кода, я получаю en-us,en;q=0.7,ja;q=0.3 , когда я использую IE для проверки блока кода, я получаю zh-cn . Является ли значение $_SERVER['HTTP_ACCEPT_LANGUAGE'] строкой? Как определить, является ли предпочтительный язык китайским или японским? Как я могу написать регулярное выражение, чтобы получить язык […]
В настоящее время я улучшаю свои знания о дырах в области безопасности в HTML, PHP, JavaScript и т. Д. Несколько часов назад я наткнулся на модификатор /e в регулярных выражениях, и я до сих пор не понимаю, как это работает. Я взглянул на документацию, но это действительно не помогло. Я понял, что этот модификатор можно […]
if(preg_match("/" . $filter . "/i", $node)) { echo $node; } Этот код фильтрует переменную, чтобы решить, отображать ее или нет. Примером записи для фильтра $ будет «офис» или «164 (. *) 976». Я хотел бы знать, есть ли простой способ сказать: если $ filter не соответствует в $ node. В виде регулярного выражения? Итак … […]
Мне нужно преобразовать любую букву, которая происходит дважды или более в одном слове, с одной буквой. Например: School -> Schol Google -> Gogle Gooooogle -> Gogle VooDoo -> Vodo Я попробовал следующее, но застрял во втором параметре в eregi_replace. $word = 'Goooogle'; $word2 = eregi_replace("([az]{2,})", "?", $word); Если я использую \\\1 для замены?, Он будет […]
Я начал изучать PHP. Так установлен WAMP-сервер на моем компьютере с Windows 7. Я пытаюсь использовать следующий код PHP: <?php $phrase = "I love PHP"; if (ereg("PHP", $phrase)) { echo "The expression matches"; } ?> Когда я попробовал это в своей мозилле, я получил результат: Deprecated: Function ereg() is deprecated in C:\wamp\www\learnphp\common.php on line 3 […]
Пытаясь заменить все вхождения @mention на якорный тег, до сих пор у меня есть: $comment = preg_replace('/@([^@ ])? /', '<a href="/$1">@$1</a> ', $comment); Возьмем следующую строку образца: "@name kdfjd fkjd as@name @ lkjlkj @name" Пока что все соответствует, но я хочу проигнорировать этот единственный символ «@». Я попытался использовать «+» и «{2,}» после «[^ @]», […]
Как получить все значение src с помощью regex в php? <script type="text/javascript" src="http://localhost/assets/javascript/system.js" charset="UTF-8"></script> <script type='text/javascript' src='http://localhost/index.php?uid=93db46d877df1af2a360fa2b04aabb3c' charset='UTF-8'></script> Полученное значение должно содержать только: Http: //localhost/assets/javascript/system.js HTTP: //localhost/index.php UID = 93db46d877df1af2a360fa2b04aabb3c Спасибо.
Я получаю эту нечетную ошибку в функции preg_match (): Предупреждение: preg_match (): Ошибка компиляции: диапазон не соответствует порядку в классе символов со смещением 54 Линия, которая вызывает это: preg_match("/<!–GSM\sPER\sNUMBER\s-\s$gsmNumber\s-\sSTART–>(.*)<!–GSM\sPER\sNUMBER\s-\s$gsmNumber\s-\sEND–>/s", $fileData, $matches); То, что это регулярное выражение делает, анализирует HTML-файл, извлекая только часть между: <!–GSM PER NUMBER – 5550101 – START–> а также: <!–GSM PER NUMBER […]
У меня есть небольшая проблема с моим регулярным выражением, которое я использую для извлечения телефонных номеров из сильного <?php $output = "here 718-838-3586 there 1052202932 asdas dasdasd 800-308-4653 dasdasdasd 866-641-6949800-871-0999"; preg_match_all('/\b[0-9]{3}\s*[-]?\s*[0-9]{3}\s*[-]?\s*[0-9]{4}\b/',$output,$matches); echo '<pre>'; print_r($matches[0]); ?> вывод Array ( [0] => 718-838-3586 [1] => 1052202932 [2] => 800-308-4653 [3] => 866-641-6949 [4] => 800-871-0999 ) эта […]