在多个阵列上查找多个模式


Looking for Multiple pattern on Multiple arrays

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` 

我想移除所有与家具尺寸匹配的物品。 是否可以使用一个正则表达式来做到这一点? 真的很感激帮助

您可能需要这样的东西:

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"值不匹配。