Intersect按字母顺序整理结果c#

Intersect sorts out the results alphabetically c#

好的,这是我在堆栈中的第一个问题。所以我有当前代码(注意我使用的是 c#)-

   public static void ReadSuburbs()
        {
            String directory = @"C:\Address Sorting\";
            String[] linesA = File.ReadAllLines(Path.Combine(directory, "FileA-Database.txt"));
            String[] linesB = File.ReadAllLines(Path.Combine(directory, "Suburbs.txt"));

            IEnumerable<String> onlyB = linesB.Intersect(linesA);

            File.WriteAllLines(Path.Combine(directory, "ResultsSuburbs.txt"), onlyB);
        }

我想做的是从数据库 a 中获取所有郊区,并按照文本文件中的原样打印出来。所以我只给你一个我想要得到的结果的例子。

假设我的数据库包含街道名称

12 margret st kallangur

14 simpson st zillmere

43 pauls rd bowen hills

并且 suburbs.txt 包含澳大利亚所有郊区的列表

我要查找的结果是

kallangur

zillmere

bowen hills

但我得到的是

Bowen HIlls
Kallangur
Zillmere

我可以使用除相交之外的其他方法来获得我正在寻找的结果吗?

编辑:所以基本上我拥有的是一个数据库,里面装满了输入错误的地址 - 所以基本上我们在这个数据库中有 12 saint street Kallangur 和许多其他地址,以及我需要做的是将郊区与街道名称分开。

如果你有

IEnumerable<String> onlyB = linesB.Intersect(linesA);

linesB 的内容定义了结果序列的顺序。如果您希望 linesA 定义顺序,只需将语句转过来并使用

IEnumerable<String> onlyB = linesA.Intersect(linesB);