Php-按相似单词分组
我只是在想,在PHP或MYSQL中,我们怎样才能对相似的单词进行分组或分隔呢。例如,就像我有三星Glaxy Ace一样,这是否可以识别S120,S-120,S120,S-120 这可能吗 谢谢只有那些吗?很容易Php-按相似单词分组,php,regex,algorithm,keyword,Php,Regex,Algorithm,Keyword,我只是在想,在PHP或MYSQL中,我们怎样才能对相似的单词进行分组或分隔呢。例如,就像我有三星Glaxy Ace一样,这是否可以识别S120,S-120,S120,S-120 这可能吗 谢谢只有那些吗?很容易 /S-?120/i 但是如果您想扩展,可能需要从REGEX迁移到更复杂的东西。只有那些?很容易 /S-?120/i 但是如果你想扩展,你可能需要从正则表达式转移到更复杂的东西。你能做的就是去掉所有非字母数字字符和空格,并去掉字符串的strtoupper() $new_string =
/S-?120/i
但是如果您想扩展,可能需要从REGEX迁移到更复杂的东西。只有那些?很容易
/S-?120/i
但是如果你想扩展,你可能需要从正则表达式转移到更复杂的东西。你能做的就是去掉所有非字母数字字符和空格,并去掉字符串的strtoupper()
$new_string = preg_replace("/[^a-zA-Z0-9]/", "", $string);
$new_string = strtoupper($new_string);
您所能做的是去掉所有非字母数字字符和空格,并在字符串中加上strtoupper()
$new_string = preg_replace("/[^a-zA-Z0-9]/", "", $string);
$new_string = strtoupper($new_string);
这里最好的做法是选择一种格式并对其进行标准化。因此,对于您的示例,您只需存储
S120
,当您从用户处获得一个值时,从中删除所有非字母数字字符并将其转换为大写
您可以使用以下代码在PHP中执行此操作:
$result = strtoupper(preg_replace('/(\W|_)+/', '', $userInput));
这里最好的做法是选择一种格式并对其进行标准化。因此,对于您的示例,您只需存储
S120
,当您从用户处获得一个值时,从中删除所有非字母数字字符并将其转换为大写
您可以使用以下代码在PHP中执行此操作:
$result = strtoupper(preg_replace('/(\W|_)+/', '', $userInput));
如果你喜欢复杂的算法,试试@J0HN,它确实是一个不错的算法。如果你喜欢复杂的算法,试试@J0HN,它确实是一个不错的算法。