PHP PCRE REGEX с множественным пропуском сбоя в шаблонеPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP PCRE REGEX с множественным пропуском сбоя в шаблоне

Сообщение Anonymous »

У меня есть простая строка: < /p>

$string = '--#--%--%2B--';


Я хочу, чтобы в процентно -кодировании все символы (включительно «одинокий» %), за исключением символа - и триплетов формы %xy . Итак, я написал следующие альтернативы шаблона: < /p>

$pattern1 = '/(?:[\-]+|%[A-Fa-f0-9]{2})(*SKIP)(*FAIL)|./us';
$pattern2 = '/(?:[\-]+)(*SKIP)(*FAIL)|(?:%[A-Fa-f0-9]{2})(*SKIP)(*FAIL)|./us';
< /code>

Пожалуйста, обратите внимание на использование (multiply) (*skip) (*Fail) < /code> и (?--%23--%25--%2B--
< /code>

Я хотел бы спросить: < /p>


Два шаблона эквивалентны? Если нет, то какой из них будет подходящим для использования для кодирования URL? Не могли бы вы объяснить в нескольких словах, почему? /> < /ul>

Я знаю, что я слишком много запрашиваю у вас, задавая больше вопросов одновременно. Пожалуйста, примите мои извинения! Большое спасибо.$result = preg_replace_callback($patternX, function($matches) {
return rawurlencode($matches[0]);
}, $string);
echo $result;


Подробнее здесь: https://stackoverflow.com/questions/472 ... -a-pattern
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»