我只是在考虑如何在PHP或MYSQL中分组或分隔相似的单词。例如,就像我有三星Glaxy Ace一样,这是否可以识别 S120 , S-120 , s120 , S-120
这甚至可能吗?
由于
答案 0 :(得分:4)
您可以做的是删除所有非字母数字字符和空格,并使用strtoupper()字符串。
$new_string = preg_replace("/[^a-zA-Z0-9]/", "", $string);
$new_string = strtoupper($new_string);
答案 1 :(得分:2)
只有那些?容易。
/S-?120/i
但是如果你想扩展,你可能需要从REGEX转移到更复杂的东西。
答案 2 :(得分:2)
这里最好的办法是选择一种格式并对其进行标准化。因此,对于您的示例,您只需存储S120
,当您从用户获取值时,从中删除所有非字母数字字符并将其转换为大写。
您可以使用以下代码在PHP中执行此操作:
$result = strtoupper(preg_replace('/(\W|_)+/', '', $userInput));