Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#中进行自定义近似字符串匹配?_C# - Fatal编程技术网

如何在C#中进行自定义近似字符串匹配?

如何在C#中进行自定义近似字符串匹配?,c#,C#,我的输入存储在变量source中,并与变量targetString进行比较。因此,我希望它得到列result中的结果: source targetString result ------------------------------------------------------------- Canada Canada - Fan Club true Real

我的输入存储在变量
source
中,并与变量
targetString
进行比较。因此,我希望它得到列
result
中的结果:

    source          targetString                    result
-------------------------------------------------------------

    Canada          Canada - Fan Club                 true

    Real Madrid     Real Madrid(Football Club)        true

    Chelsea         FC - Chelsea                      false

    Wolfsburg       FC Wolfsburg                      false
我试过了。但在值为
Chelsea
Wolfsburg
的列中,在比较模式
Weak
Normal
Strong
中,它也返回
true


有没有比使用
FuzzyString
更简单的方法来解决我的问题?

从当前示例来看,您似乎只希望字符串以指定的值开头时返回true。所以,您可以改为使用如下方法:

public boolean checkString(String source, String targetString) {
    StringComparison comparison = StringComparison.InvariantCulture;
    return targetString.StartsWith(source, comparison);
}


如果您的规则发生变化,请告诉我,我可以更新答案。

这不是更适合Excel或Acces之类的产品吗?不确定这是您必须处理的偶然问题还是某些系统的要求。您希望遵循哪些规则?我是安;我甚至不明白为什么第一个示例为
true
,第三个示例为
false
,所以您只关心
字符串是否以值开头?那么为什么不使用呢?它看起来既不模糊也不近似。从您提供的表来看,这一切看起来都像是前缀搜索。在字符串上尝试
StartsWith
。阅读所有注释后,我不知道
StartsWith
。谢谢。你的答案正是我想找到的。