相关疑难解决方法(0)

在C#中匹配换行符(\n)的正则表达式

好吧,这个让我疯了......我有一个字符串,这样就形成了:

var newContent = string.Format("({0})\n{1}", stripped_content, reply)
Run Code Online (Sandbox Code Playgroud)

newContent将显示如下:(
旧文本)
新文本

我需要一个正则表达式,用括号括起来的括号中的文本和换行符.

我能想到的最好的是:

const string  regex = @"^(\(.*\)\s)?(?<capture>.*)";
var match= Regex.Match(original_content, regex);
var stripped_content = match.Groups["capture"].Value;
Run Code Online (Sandbox Code Playgroud)

这工作,但我想专门匹配换行符(\n),没有任何空格(\s)替换\s\n \\n\\\n无法正常工作.

请帮我保持理智!

编辑:一个例子:

public string Reply(string old,string neww)
        {
            const string  regex = @"^(\(.*\)\s)?(?<capture>.*)";
            var match= Regex.Match(old, regex);
            var stripped_content = match.Groups["capture"].Value;
            var result= string.Format("({0})\n{1}", stripped_content, neww);
            return result;
        }

Reply("(messageOne)\nmessageTwo","messageThree") returns :
(messageTwo)
messageThree
Run Code Online (Sandbox Code Playgroud)

.net c# regex

33
推荐指数
3
解决办法
7万
查看次数

标签 统计

.net ×1

c# ×1

regex ×1