c#中正则表达式的使用。。速求各位大神帮忙啊,代码详细点 小弟渣渣一个刚入门学习,谢谢了 !

要求:1.将下面内容中带“▲”的所在行内容删除。2.将内容中所有行的第一个“.”和最后一个“(”替换为“tab键”。3.将内容中所有行的最后一个“)”后面的内容替换为空。
▲体育
1.NBA总决赛明天开始(网易) 9
2.网球总决赛后天开始(搜狐) 9
▲音乐
3.周杰伦又被吐槽了(北京青年报等) 11
4.中国游戏哈贼好看(北京晨报等) 11

替换完成后的内容如下(如果能将下面的内容导出成为excel就更好了,以“tab”键为分列)
1 NBA总决赛明天开始 网易
2 网球总决赛后天开始 搜狐
3 周杰伦又被吐槽了 北京青年报等
4 中国游戏哈贼好看 北京晨报等

3个回答

楼主,根据您提供的案例,我建议用两个正则解决,一个正则先删除带"▲"的所有行。此时应用如下正则:▲\w+\n;
在c#中直接将匹配到的目标replace成""就好了。可见如下图:
图片说明
解决了删除带有特殊符合的行以后,对剩下的行就应用客制化的正则:(\d+).(\w+)(([))]\s*\d+(\n?);
匹配成功以后,只需要按需组合您需要的group就可以啦。可见如下图:
图片说明
此处replace的内容是根据您的要求来的,组合形式是group1+Tab键+group2+Tab键+group3+group4
图片说明

qq_27323623
Yirujet 回复s544243739: 楼主,请看最下方,这是控制台写的,符合您的案例哦。
接近 2 年之前 回复
s544243739
s544243739 你好 我C#刚学了循环 你可以帮我一下么 Q544243739 实在感谢 我真的急用 研究了好久也不行
接近 2 年之前 回复
s544243739
s544243739 太感谢你了,我先试试哈~
接近 2 年之前 回复

http://help.locoy.com/Document/Learn_Regex_For_30_Minutes.htm
只能帮你这么多了,还要详细代码问蒋涛要吧。他有。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;

namespace regexp_help
{
class Program
{
static void Main(string[] args)
{
string strPrimaryTxt = @"▲体育" + Environment.NewLine;
strPrimaryTxt += @"1.NBA总决赛明天开始(网易) 9" + Environment.NewLine;
strPrimaryTxt += @"2.网球总决赛后天开始(搜狐) 9" + Environment.NewLine;
strPrimaryTxt += @"▲音乐" + Environment.NewLine;
strPrimaryTxt += @"3.周杰伦又被吐槽了(北京青年报等) 11" + Environment.NewLine;
strPrimaryTxt += @"4.中国游戏哈贼好看(北京晨报等) 11" + Environment.NewLine;

        string regRemoveSpecialLine = @".*▲\w+\r\n";
        strPrimaryTxt = Regex.Replace(strPrimaryTxt, regRemoveSpecialLine, "");
        string regFormatTxt = @"(\d+)\.(\w+)[((](\w+)[))]\s*\d+(\r\n?)";
        MatchCollection matchcollection = Regex.Matches(strPrimaryTxt, regFormatTxt);
        string strFormatTxt = "";
        foreach (Match match in matchcollection)
        {
            strFormatTxt += match.Groups[1].ToString() + "\t" + match.Groups[2].ToString() + "\t" + match.Groups[3].ToString() + match.Groups[4].ToString();
        }
        Console.WriteLine(strFormatTxt);
        Console.ReadKey();
    }
}

}
图片说明
图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!