C# 入门之正则表达式匹配并替换

好久没有更新了,最近比较忙,不过今天遇到一个很有意思的问题,就过来记录一下。

通过正则表达式匹配文本并替换。

在一个脚本中,有很多路径,此时我需要更改这个路径的部分,所以需要通过正则表达式来匹配,找到满足条件的字符串,然后再进行替换。

原始路径:

%USERPROFILE%\tools\test.cmd

替换后的路径:

C:\tools\test.cmd

代码内容:

using System;
using System.Text.RegularExpressions;

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = "%USERPROFILE%\\tools\\test.cmd";
            string regexStr = @"^\%.*\%";    // 匹配已 % 开头和结尾,中间有一个或多个字符串
            string c = Regex.Replace(a, regexStr,"C:");   // 通过 Regex 类中的 Replace 方法,来进行匹配替换
            Console.WriteLine(c);
        }
    }
}

Replace 语法:

Regex.Replace(源文本, 匹配规则,替换字符串)

为什么说这个很有意思呢,我的理解:在匹配规则的时候,我使用了 @,后面应该都转义了,不需要额外的转义字符了,应该可以直接将两个 % 当成字符串进行匹配,结果确不行。


<<:  Use Alfresco APSCA Exam Questions and Save yourself From Exam Anxiety

>>:  为了转生而点技能-JavaScript,day7 (原始型态与物件型态在记忆体上的变化

Day 28 - 范例动手做 - 安装 Monitor Agent

今天要在 app 的容器里安插我们的 agent,我们要装的是 Telegraf 和 Node Ex...

Day5:深入认识 Coroutine

这几天我们把 Coroutine 神秘的面纱好像掀开了一点,知道他是用来解决非同步程序的问题,也我们...

[MIT-6.S081-2020] OS课程----Xv6作业系统的环境架设

前言 哈罗大家好,6.S081是麻省理工的一门作业系统的课程,小弟我在寒假时有听说这们课程很厉害,但...

[Day 29] 应用三:开发Easy Eye App

接续昨天的内容,我们今天先测试一下各个utils功能是否可以正常运作: 在applications/...

DAY23 model展示

>model.py from logging import root from django....