当分隔符可以是值时,C#分割文本

时间:2017-05-25 10:42:06

标签: c# text split

我有一个文本文件,它是从数据库中提取的。每行都是一条记录,我试图解析它。

以下是一些匿名化后的麻烦部分:

-webkit-animation-delay

它可能有字符串或数字,由制表符分隔。字符串在括号内。不幸的是,制表符也可能出现在诸如" Name1" 我通过解决一些解析错误来学习。

我的第一个代码是:

 public static void searchStringArray() {
        String[] chestOrder = { "silver", "silver", "silver", "gold", "silver",
                "silver", "gold", "silver", "silver" };

        String searchString = "silver silver silver gold";
        StringBuilder tempStr = new StringBuilder();
        for (String s : chestOrder) {
            tempStr.append(s + " ");
        }
        Scanner scanner = new Scanner(tempStr.toString());
        while (scanner.hasNext()) {
            if (null != scanner.findInLine(searchString)) {
                System.out.println("" + scanner.next());
            } else {
                scanner.next();
            }
        }
        scanner.close();

    }

但如果某个名称中有制表符,则会出错。

如何分割和解析这些行,忽略名称中的制表符(用括号括起来)并仅检测真正的分隔符?

0 个答案:

没有答案