我有一个字符串。
我必须找到此字符串的特定部分。我想使用正则表达式。
我需要在此名称中找到目的地部分* = UTF-8''目的地\ r \ n字符串。哪个是好模式?
感谢。
答案 0 :(得分:3)
要查找name*=UTF-8''destination\r\n
,您可以使用类似
name\*=(.*)$
=
之后的字符串部分将在捕获组1中。
如果你真的只想要destination
部分,它可能更像是
name\*=UTF-8''(.*)$
*
是正则表达式中的特殊字符(0或更多次出现的量词),因此您需要将其转义\*
()
括号创建一个捕获组(访问类似result.Groups[1])
)
$
是一个匹配行尾的锚点。 (您的\r\n
)
String Text_A = @"name*=UTF-8''destination
";
Regex A = new Regex(@"name\*=UTF-8''(.*)$");
var result = A.Match(Text_A);
Console.WriteLine(result.Groups[1]);
但是您提供的信息有点稀疏,您能解释一下并提供更多背景信息吗?
答案 1 :(得分:1)
我不完全确定你的问题的哪一部分是要匹配的字符串,但假设你的字符串是“name * = UTF-8”destination \ r \ n“,你可以使用这个Regex
字符串:
@"name\*=UTF-8""(?<destination>.*)\r\n"
可以从Match对象访问“destination”字段,即:
var regex = new Regex(@"name\*=UTF-8""(?<destination>.*)\r\n");
var match = regex.Match(test);
var destination = match.Groups["destination"].Value;
根据上下文,您可以使用更通用的正则表达式构造(如. \w \s
等)替换匹配字符串的其他部分
干杯,
西蒙