【发布时间】:2015-04-02 18:11:03
【问题描述】:
我遇到的情况是,我以字符串格式获取数据(地理区域的名称)。(例如:- 亚洲、澳大利亚)有时我还会获得包含 1 个以上区域的字符串(例如:- 欧洲和非洲、北部美国和德国等)。这些地区的分隔符也不同,但地区保持不变(例如:- 亚洲和非洲、亚洲-非洲、亚洲/非洲等)。主要问题是这些数据可能不一致。它也有拼写错误。(例如:- Pacific/Pasific 等)
现在我需要将所有这些区域映射到一组存储桶中,但到目前为止我必须手动执行此操作。有没有一种方法可以至少在某种程度上自动化这些字符串的映射?我曾尝试使用 soundex 功能,但我决定不使用它,因为 USA 或 U.S.A 或 United States 的显示方式不同,Austria 和 Australia 的显示方式相同。
感谢您的帮助
【问题讨论】:
-
你是怎么得到这些名字的?这是用户输入的问题,还是您从某个您无法控制的来源接收这些字符串?
-
开发人员有责任纠正错误输入的数据,但开发人员有责任尝试他们的在在 Stack Overflow 上提出问题之前提出自己的要求。请向我们展示您到目前为止所做的尝试。
-
@Steve 我们使用彭博数据。所以我们无法控制它。我们询问了彭博社,他们自己是否有一种方式,他们说他们提供数据的方式与提供给他们的方式相同。
-
@Sheridan 就像我说的。我尝试过使用 soundex 方法以及字符串差异方法。但选择不使用它,因为它们不是万无一失的..
-
嗯,这是一个困难的场景。我现在唯一能想到的就是某种学习工具。假设有两个表,一个具有规范化区域,另一个具有这些变量字符串,它们通过公共代码链接在一起。在变量表中搜索并查看是否有标准化版本,否则添加新字符串并要求手动协调它。随着时间的推移,手动工作量应该会减少。 (如果变化的数量不是无限的)
标签: c# wpf string mapping match