使用PHP在字符串中查找确切的值

Big*_*igs 0 php string

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

简而言之,问题是:

我试图在无组织的字符串中搜索一些可用的大小.

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

目前大多数问题都是通过利用空格来消除唯一变量来解决的,但是当谈到(数字X数)作为短语时,它变得非常困难.

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

有没有办法解决这个问题?

Pau*_*xon 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);
Run Code Online (Sandbox Code Playgroud)

现在你可以在空格上爆炸了

 $sizeArray=explode(' ', $sizes);
Run Code Online (Sandbox Code Playgroud)

使用数组中的所有不同大小,您可以使用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!
 }
Run Code Online (Sandbox Code Playgroud)