Я ищу шаблон PCRE, который будет соответствовать тексту между разделителями любым действительным шаблоном PCRE независимо от используемых разделителей и модификаторов.Образец PCRE, который соответствует текстовому рисунку PCRE
0
A
ответ
2
Имеются четыре раздельных разделителя, насколько мне известно: ()
, []
, {}
, <>
. Все остальные допустимые символы используются только дважды. Согласно documentation, мы можем использовать любой символ, не являющийся буквенно-цифровым, без пробелов, без обратного слэша. Так эта схема должна работать:
/
^
(?=([^a-zA-Z0-9\s\\\\])) # make sure the pattern begins with a valid delimiter
# and capture it into group 1
(?| # alternation for different delimiter types
# each alternative captures the pattern into group 2
\((.*)\) # handle (...)
|
\[(.*)\] # handle [...]
|
\{(.*)\} # handle {...}
|
<(.*)> # handle <...>
|
.(.*)\1 # handle all other delimiters with a backreference
)
[imsxeADSUXu]* # allow for modifiers
$
/xs
Если вы используете этот $pattern
в
preg_match($pattern, $input, $matches);
тогда вы найдете нужный вам результат в $matches[2]
.
Конечно, это примут кучу недействительных шаблонов, поскольку это не гарантирует, что разделитель не появится где-то раньше в шаблоне.
+0
Вау, спасибо. –
Смежные вопросы
- 1. PCRE не соответствует
- 2. PCRE не соответствует utf8 символов
- 3. PHP PCRE: соответствует содержимому скобок
- 4. PHP PCRE соответствует пунктуации, но не ++
- 5. Соответствие заказа в PCRE
- 6. C + + и PCRE вопрос
- 7. PCRE - Отрицательный Lookahead
- 8. Проблемы с PHP PCRE
- 9. PCRE Regex/WordPress/дескрипторы
- 10. PCRE проблемы многострочных согласующего
- 11. PHP PCRE синтаксис
- 12. Синтаксис Regex PCRE
- 13. Что такое PCRE-совместимый синтаксис? И совместим ли C# PCRE?
- 14. Что означает `&` в PCRE?
- 15. Help with Regex (PCRE)
- 16. Репозиторий общих шаблонов PCRE?
- 17. Использование PCRE на ILE
- 18. Простой PCRE Regex
- 19. Повторные захвата группы PCRE
- 20. PCRE REGEX Передача переменной
- 21. Два PCRE регулярные выражения
- 22. PHP PCRE - матч «ничего»
- 23. NSIS pcre unicode
- 24. PCRE регулярного выражения пробельных
- 25. PCRE - Первое совпадение
- 26. PHP ошибка PCRE preg_replace
- 27. postfix header_checks pcre (lookahead)
- 28. PCRE pcre_exec thread safe?
- 29. PCRE заменить стиль разметки
- 30. grep, эквивалентный оператору `?` Pcre
Приведите пример. –
@JasonMcCreary Match 'text' в'/text/',' {text} iu' и т. Д. –
Просьба также показать нам, что вы пробовали, что не сработало. Кроме того, вы знаете, что вам нужно анализировать регулярное выражение, если вы хотите убедиться, что шаблон действителен? –