У меня есть эта строка:
key1:val1;key2:val2;key3:val3
Она также может быть написана так:
key1:val1;key2:val2;key3:val3;
Я хочу preg_match_all обе строки выше, так что он будет возвращать тот же массив, как этот:
МАТЧЕЙ 1
Array
(
[0] => key1
[1] => key2
[2] => key3
)
МАТЧЕЙ 2
Array
(
[0] => val1
[1] => val2
[2] => val3
)
Сейчас я использую это регулярное выражение:
(.*?):(.*?);
К сожалению,это не работает для первой строки.Ранее я пытался использовать регулярные выражения, но результат был хуже:
(.*?):(.*?);?
Вот мой эксперимент: https://3v4l.org/5HAco.Если для решения этой проблемы есть функция PHP, я тоже могу принять ее.