正则表达式,怎么匹配一段字符串中的第5个空格?

比如:“aaa b c yy 我 中国人” 我要配备第5个空额加一个“是”

            //string a = "aaa b c yy 我 中国人 我要配备第5个空格加一个“是”";
            //a = Regex.Replace(a, @"^(([^\s]+\s){4})([^\s]+)\s", @"$1$3是");
            //a = Regex.Replace(a, @"(?<=(?:\S*\s){4}[\S])\s", "是");

            string pattern = @"^(([^\s]+\s){4})([^\s]+)\s";
            string substitution = @"$1$3是";
            string input = @"比如:“aaa b c yy 我 中国人” 我要配备第5个空格加一个“是”";
            RegexOptions options = RegexOptions.Multiline;

            Regex regex = new Regex(pattern, options);
            string result = regex.Replace(input, substitution);

            Console.WriteLine(result);

结果输出:比如:“aaa b c yy 我是中国人” 我要配备第5个空格加一个“是”

正则解释

posted @ 2020-10-20 22:40  一纸年华  阅读(4)  评论(0编辑  收藏  举报  来源