我有一个大约10万对文本字符串(句子)的列表,即使值不同,也可能意味着相同。许多问题仅仅是因为在对的一半上使用了缩写和不同的标点符号:
Source 1 Source 2
TEMP.IND. TEMPERATURE INDICATOR
我对如何解决这个问题的初步想法是按字词分割字符串,然后在包含缩写的表格和类似于下面的全长字词中查找每个单词:
Abbreviation: Meaning:
TEMP. TEMPERATURE
IND. INDICATOR
如果找到匹配项,我会先使用新词生成替换字符串,然后再将其与其他源进行比较。如果它们不匹配,我会在查找表中找到每个缩写词的重复过程。
与Oracle相比,这在Oracle中是否会非常复杂。 C#(我很流利)?将它保存在数据库中将是首选,但如果它需要花费太多时间来实现则不是。还有更好的选择吗?另一种方法是手动检查所有内容。
如果这是错误的网站,请道歉。
答案 0 :(得分:1)
在DB(Oracle)中应该像在C#中一样容易,并且可能要快得多。一旦创建了等价表(使用缩写和含义列),编写代码就不是问题了。
困难在于规范中。为什么要Temp。 Ind。意为“温度指标”而不是“临时指数”或“印度寺庙”?只有当每个缩写对应一个独特的含义时,这将起作用(在Oracle或C#或其他任何不相关的地方)。
祝你好运!