说我有两个字符串
$string1 = 'foo bar 1,5,6 things';
$string2 = 'example 5,2,3 potato';
我试图在php中找到一种方法来比较两个字符串的格式并将它们分成一个数组,所以例如结果将是
$string1 = array('foo bar', '1,5,6', 'things');
$string2 = array('example', '5,2,3', 'potato');
有没有办法在PHP中执行此操作?
答案 0 :(得分:0)
根据您的示例输入并假设逗号分隔的数字列表可以被视为"分隔符",您可以使用PREG_SPLIT_DELIM_CAPTURE
与$split = preg_split('/\s+([\d,]+)\s+/', $string, -1, PREG_SPLIT_DELIM_CAPTURE);
分开; e.g:
<?php
$strings = [
'foo bar 1,5,6 things',
'example 5,2,3 potato',
];
$stringsSplit = array_map(function (string $string) {
return preg_split('/\s+([\d,]+)\s+/', $string, -1, PREG_SPLIT_DELIM_CAPTURE);
}, $strings);
print_r($stringsSplit);
示例实施:
Array
(
[0] => Array
(
[0] => foo bar
[1] => 1,5,6
[2] => things
)
[1] => Array
(
[0] => example
[1] => 5,2,3
[2] => potato
)
)
这会产生:
event.point.category
希望这会有所帮助:)