Мне нужна помощь в поиске шаблона PCRE с помощью preg_split().
Я использую приведенный ниже шаблон регулярного выражения, чтобы разделить строку на основе ее начального трехсимвольного кода и точки с запятой. Шаблон отлично работает в Javascript, но теперь мне нужно использовать его в PHP. Я попробовал preg_split(), но мне только что вернули мусор.
// Каждая группа начинается с трехбуквенного кода и состоит из трех сегментов, разделенных точкой с запятой. Строка не будет завершаться точкой с запятой.
// Pseudocode
string_to_split = "AAA;RED;111;BBB;BLUE;22;CCC;GREEN;33;DDD;WHITE;44"
// This works in JS
// https://regex101.com
$pattern = "/[AAA|BBB|CCC|DDD][^;]*;[^;]*[;][^;]*/gi";
Match 1
Full match 0-11 `AAA;RED;111`
Match 2
Full match 12-23 `BBB;BLUE;22`
Match 3
Full match 24-36 `CCC;GREEN;33`
Match 4
Full match 37-49 `DDD;WHITE;44`
$pattern = "/[AAA|BBB|CCC|DDD][^;]*;[^;]*[;][^;]*/";
$split = preg_split($pattern, $string_to_split);
returns
array(5)
0:""
1:";"
2:";"
3:";"
4:""
Подробнее здесь: https://stackoverflow.com/questions/515 ... n-a-string