c#在字符串数组中查找具有不同排列的字符串值

本文关键字:字符串 排列 数组 查找 | 更新日期: 2023-09-27 18:16:16

我正在努力寻找一种干净的方法来从字符串数组中获取硬盘驱动器和内存值。每个字符串与下一个字符串有不同的排列,我有超过1000条记录可以从中获取这些信息。

为了使它更复杂,有MAX或M-A-X的引用,这是一个内部引用,我需要捕获这个和附加到它的任何值。参见数组中的第3和第4项。在这些情况下,我需要分别捕获2TB HD和1TB HD。

下面是我得到这些信息的数据的快照。

解决这个问题的最好方法是什么?

提前感谢。

string[] arrayString = {"Desktop 1TB Hard Drive 4GB RAM",
                                "Desktop 500GB HDD 2GB Memory",
                                "Laptop MAX HDD (2TB HD) 4GB ram", //capture the MAX & 2TB HD as part of the hard drive value
                                "Desktop M-A-X HDD (1TB HD) 2GB RAM", //capture the M-A-X & 1TB HD as part of the hard drive value
                                "1000Gb HardDrive, 2gb ram - promotion",
                                "Hard Drive 100GB",
                                "Desktop MAX HDD MAX RAM",
                                "Laptop MAX HDD 2TBHD 4GBR"};
        foreach (var s in arrayString)
        {
            //get hard drive value in TB, GB, MB
            var hardDrive = "";
            //get memory/ram value in GB, MB
            var memory = "";
        }

c#在字符串数组中查找具有不同排列的字符串值

希望我能帮上一点忙。

foreach (var s in arrayString)
{
    var hardDrive = "";
    var memory = "";
    string[] splitString = s.Split(Convert.ToChar(" "));
    foreach (var st in splitString)
    {
        //Insert all your data parsing in here, keeping in mind that you're working one string at a time
    }
}