[英]How to use Regex to identify specific line? c#
我是正则表达式的新手,但仍然不太了解
我需要识别一条线,但由于某种原因,我在使用正则表达式时总是会出错
识别结构的行:屏幕消息:FULL PATH \ FILENAME.PNG
例子:
Screen Message: c:\program files (x86)\regression machine work\reports\156487/04-37-71_47-38-141\Screenmessages\63445646476476767574.FAR.png
尝试使用 go 作为前缀(“屏幕消息:”)和后缀(“.FAR.png”),但无法正常工作
Regex.Match(Text, $"(^Screen Message: )+[0-9]+[a-z]\+{.FAR.png}$", RegexOptions.IgnoreCase).Success;
任何帮助将不胜感激谢谢
您可以使用正则表达式
Screen Message:\s*(?<folder>.*)\\(?<filename>.*\.FAR\.png)
请参阅正则表达式演示。 详情:
Screen Message:
- 一个字符串\s*
- 零个或多个空白字符(?<folder>.*)
- 组“文件夹”:尽可能多的任何零个或多个字符\\
- 一个\
字符(?<filename>.*\.FAR\.png)
- 组“文件名”:尽可能多的零个或多个字符,然后是.FAR.png
substring请参阅C# 演示:
var pattern = @"Screen Message:\s*(?<folder>.*)\\(?<filename>.*\.FAR\.png)";
var input = @"Screen Message: c:\program files (x86)\regression machine work\reports\156487/04-37-71_47-38-141\Screenmessages\63445646476476767574.FAR.png";
var match = Regex.Match(input, pattern);
if (match.Success)
{
Console.WriteLine("Folder: '{0}', filename: '{1}'",
match.Groups["folder"].Value, match.Groups["filename"].Value);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.