[*] Каждая новая строка начинается с слова Type или Tag и: приходит после этого. | Тип или Tag должна быть группой захвата 1
[*] Varchar может прийти после: | Этот варчар должен быть группой захвата 2 < /li>
Код: Выделить всё
\\[*] Число приходит после \\ | Это число должно быть группой захвата 3 < /li>
Код: Выделить всё
?[*] Если у нас есть? Этот варчар должен быть группой захвата 4
[*] Если у нас есть? + varchar, то: может произойти после этого
Если у нас есть? Этот варчар должен быть группой захвата 5 < /li>
< /ul>
Примеры: < /p>
Код: Выделить всё
type:test\\1?value12:value9 // Should get: Group 1 = type, Group 2 = test, Group 3 = 1, Group 4 = value12, Group 5 = value9
type:\\22?value62:value3 // Should get: Group 1 = type, Group 2 = NULL, Group 3 = 22, Group 4 = value62, Group 5 = value3
< /code>
my regex: < /p>
/(type|tag):([^\\]+)?\\\\([0-9]{1,3})?\??([^\:]+):([^\:]+)?/i
< /code>
Я считаю, что это не точное, например: < /p>
type:\\1p?hello:iii
Кто -нибудь может помочь? Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/693 ... ific-rules
Мобильная версия