我有一些不同语言的字符串;例如:
- "kot jest dobry"(波兰语)
- "cat is good" (英文)
它们是从英语翻译成从用户选择的语言的按钮的标题。
以编程方式比较这些字幕的最佳方法是什么?
由于这两个字符串都是彼此的翻译,您可以维护一个翻译表,如果您想找出两个字符串是否相同,您可以在表中查找它们,如果它们碰巧落在同一行中,那么它们就是相等的,例如
class TranslatedText
{
public int Id {get; set; }
public string Language {get; set; }
public string Text {get; set; }
}
因此,使用每个字符串填充TranslatedText
对象的列表,并为相同的文本片段分配相同的 id。稍后进行比较,您可以在列表中查找相应的对象并像这样检查 ID
var first = translatedTextList.FirstOrDefault(t=>t.Text.Equals(firstString));
var second = translatedTextList.FirstOrDefault(t=>t.Text.Equals(secondString));
bool areSame = (first != null & second !=null & first.Id == second.Id);
return areSame;
假设您要比较的字符串称为 firstString
和 secondString
;
覆盖.equal()函数或将其转换为char数组然后比较!
在这里,您可以找到如何:
http://msdn.microsoft.com/en-us/library/ms173147.aspx