小编Cur*_*tis的帖子

C#中的正则表达式替换

我对使用正则表达式相当新,而且,根据我读过的一些教程,我无法在我的Regex.Replace格式化中正确地执行此步骤.

这是我正在处理的场景......当我从列表框中提取数据时,我想将其格式化为CSV格式,然后保存文件.使用"替换"选项是此方案的理想解决方案吗?

在正则表达式格式化示例之前.

FirstName LastName Salary    Position
-------------------------------------
John      Smith    $100,000.00  M
Run Code Online (Sandbox Code Playgroud)

正则表达式替换后的建议格式

John Smith,100000,M
Run Code Online (Sandbox Code Playgroud)

当前格式化状态输出:

John,Smith,100000,M
Run Code Online (Sandbox Code Playgroud)

*注意 - 有没有办法用空格替换第一个逗号?

我的代码片段

using(var fs = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.Write))
{
    using(var sw = new StreamWriter(fs))
    {
        foreach (string stw in listBox1.Items)
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine(stw);

            //Piecing the list back to the original format
            sb_trim = Regex.Replace(stw, @"[$,]", "");
            sb_trim = Regex.Replace(sb_trim, @"[.][0-9]+", "");
            sb_trim = Regex.Replace(sb_trim, @"\s", ",");
            sw.WriteLine(sb_trim);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# regex

35
推荐指数
2
解决办法
10万
查看次数

标签 统计

c# ×1

regex ×1