0

目前手头的任务是使用 PHP 来检查数据是否存在

简而言之,问题是:

我正在尝试在无组织的字符串中搜索一些可用的大小。

尺寸为 SM/MM/LL/XL XS SML XL XXL 28 30 31 32 33 34 35 36 28 X 30 28 X 32

目前大多数问题都是通过使用空格来区分唯一变量来解决的,但是当涉及到 (number X number) 作为一个短语时,它变得非常困难。

当我搜索“28”时,它也检测到看到“28 X 30”或当我搜索包含空格的唯一数字“30”时,它仍然检测到 28 X“30”

有什么方法可以解决这个问题吗?

4

1 回答 1

5

您可以做的是通过首先转换nnn X nnn字符串并从中删除空格来使字符串更易于处理:

 //BEFORE: SM/M M/L L/XL XS S M L XL XXL 28 30 31 32 33 34 35 36 28 X 30 28 X 32
 //AFTER: SM/M M/L L/XL XS S M L XL XXL 28 30 31 32 33 34 35 36 28X30 28X32
 $sizes=preg_replace('/(\d+) X (\d+)/', '$1X$2', $sizes);

现在您可以在空格上爆炸字符串

 $sizeArray=explode(' ', $sizes);

使用数组中的所有不同大小,您可以使用 in_array 来查找特定的大小代码。

 //we want to find this
 $searchFor='28 X 30';

 //our codes no longer have spaces...
 $searchFor=str_replace(' ', '', $searchFor);
 if (in_array($searchFor, $sizeArray)) {
      //great!
 }
于 2013-06-01T21:57:33.170 回答