我有一个搜索表单,我希望我的用户能够为非英文字符输入英文字符等价物。
例如。 要查找Ælfred,用户可以搜索“Ælfred”或“AElfred” 搜索也应该不区分大小写,因此“aelfred”会起作用 我也搜索它,以便默认情况下它匹配字符串的开头,因此搜索“Æ”或“AE”或甚至“A”将在结果中包含Ælfred。
其他转换,例如ê - > e,å - > a,需要考虑。
我正在使用带有SQL后端的ASP.NET。是否有任何标准库可以帮助进行此类搜索?
答案 0 :(得分:1)
并非总是有一个等同于非英语字符的英文字符,但可以尝试使用string.Normalize将规范化字符串存储在不同的字段中并与之比较。
MS SQL字段和全文搜索目录可以是不区分重音且不区分大小写的,因此您可以覆盖其他案例。