Regex”;“与”;操作人员

本文关键字:操作 Regex | 更新日期: 2023-09-27 18:28:39

我有一个字符串,如下所示:
源路径:''build''PM''11.0.25.9''11025_0_X.pts目标路径:

我想切断字符串"源路径:"answers"目标路径:",以便只获取源路径。
我想这样做就是做一个简单的Regex.Replace

然而,我不确定如何编写一个同时查找这两个字符串的模式。

有什么想法吗?谢谢

Regex”;“与”;操作人员

也许是不使用替换的东西:

string s = "Source Path: 'build'PM'11.0.25.9'11025_0_X.pts Destination Path:";
Match m = Regex.Match(s, "^Source Path:'s(.*?)'sDestination Path:$");
string result = string.Empty;
if (m.Success)
{
    result = m.Groups[1].Value;
}

不需要Regex,只需执行Replace:即可

var path = "Source Path: 'build'PM'11.0.25.9'11025_0_X.pts Destination Path:"
    .Replace("Source Path: ", "")
    .Replace(" Destination Path:", "");

如果字符串的格式始终相同,并且路径中没有空格,则可以将字符串拆分与SkipFirst IEnumerable扩展一起使用。

var input = @"Source Path: 'build'PM'11.0.25.9'11025_0_X.pts Destination Path:";
var path = input.Split(new [] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
                .Skip(2)
                .First();