我有数据字符串“ Atap Bocor AC Bagus Kursi bagus Meja Bagus” 我想转换为数组:
array(0) => Atap Bocor
array(1) => AC Bagus
array(2) => Kursi bagus
array(3) => Meja Bagus
我尝试使用php expldan dan jquery split不能按我的意愿工作
答案 0 :(得分:2)
使用正则表达式
function conver_to_array($str, $delim, $n)
{
return array_map(function($p) use ($delim) {
return implode($delim, $p);
}, array_chunk(explode($delim, $str), $n));
}
$array = conver_to_array("Atap Bocor AC Bagus Kursi bagus Meja Bagus", " ", 2);
print_r($array);
答案 1 :(得分:0)
如果它总是配对,请在空格处分割字符串,然后通过组合每两个项目并将其推入来创建新数组。
var str = "Atap Bocor AC Bagus Kursi bagus Meja Bagus";
var strArr = str.split(' ');
var newArr = [];
for(i=1; i<strArr.length; i+=2) {
newArr.push(strArr[i-1] + ' ' + strArr[i])
}
console.log(newArr); // gives ["Atap Bocor","AC Bagus", "Kursi bagus", "Meja Bagus"]
答案 2 :(得分:0)
谢谢大家,解决了。我使用代码:
function split_nth($str, $delim, $n)
{
return array_map(function($p) use ($delim) {
return implode($delim, $p);
}, array_chunk(explode($delim, $str), $n));
}
$array = split_nth("Atap Bocor AC Bagus Kursi bagus Meja Bagus meja Rusak", " ", 2);
print_r($array);