2

我写了一个代码,返回一个由制表符分隔的单词

const string input = "Lorem ipsum        dolor        sit %download%#456 amet, consectetu";

        static void Main(string[] args)
        {

            Regex expression = new Regex("\tw+\t");
            var results = expression.Matches(input);
            foreach (Match match in results)
            {

                Console.WriteLine(match);
            }
            Console.ReadLine();
        }

但是这段代码不能正常工作。提前帮助我
谢谢

4

3 回答 3

6

您现有的代码可以通过制作您的 regex 来修复[^\t]+。通过匹配不是制表符的所有内容,您将获得制表符分隔的单词。

但是,您应该真正使用Regex.Split它。

results = Regex.Split(input, @"\t+");
于 2013-02-28T09:23:34.583 回答
2

如果只是标签,为什么要使用正则表达式?只需使用String.Split

input.Split(new[] { '\t' }, StringSplitOptions.RemoveEmptyEntries);
于 2013-02-28T09:35:26.723 回答
0

您是否认为字符串中的单词是由制表符分隔的,还是可能有空格?

于 2013-02-28T09:49:52.140 回答