Array
(
[0] => Oramen
[1] => 20
[2] => OT-301-FNS
[3] => 40X40
)
Array
(
[0] => LR-153-TKW
[1] => Klaten
[2] => Rectangular
[3] =>
[4] => 12x135x97
)
Array
(
[0] => GN-187-TKW
[1] => GARDEN
[2] => LAMP
[3] => POST
[4] => A
[5] => 30x30x130.JPG
)
Array
(
[0] => BANDUNG
[1] => ENTERTAINMENT
[2] => TABLE
[3] => LR-315-TKW
[4] =>
[5] => -
[6] => 180x50x46.5
)`enter code here`
我想删除所有与家具尺寸相匹配的商品。是否可以使用一个正则表达式表达式?非常感谢帮助
答案 0 :(得分:0)
你可能需要这样的东西:
foreach ($array_of_arrays as &$some_array) {
$some_array = array_filter($some_array, function($el) {
return ! preg_match('#^\d+x\d+#i', $el);
});
}
unset($some_array);
换句话说,您使用函数尝试过滤每个数组,该函数尝试逐个匹配其元素与模式...
`/^\d+x\d+/i`
...表示'匹配字符串的开头,然后是任意数量的数字,然后是x
字符,然后是任意数量的数字'。从我在您的示例中看到的情况来看,这是一种模式,因为^\d+x\d+x\d+
与“40X40”值不匹配。