C#Regex匹配指定子字符串旁边的任何字符,但忽略换行符/制表符

时间:2016-03-06 21:07:27

标签: c# .net regex visual-studio-2013

我希望匹配单词" Test"旁边的字符。但如果下一个字符是换行符\n,我需要在换行符字符旁边输入字符。在以下输入字符串中,我的desired output是字符Cw。但我得到的是\nw

string str = "This abcTest\nCde and qrvTestwest is an input";
foreach (Match mt in Regex.Matches(str, @"(?<=Test)(.)",RegexOptions.Singleline))
    Console.WriteLine(mt.Groups[1].Value);

2 个答案:

答案 0 :(得分:1)

试试这个:

Test[\n]*(.)

它会跳过任意​​数量的换行符。

答案 1 :(得分:0)

您正在询问的正则表达式是:

Test[\n](.)|Test(.)

您需要检查两个案例Test \ n和Test(。)。

检查一个正常的正则表达式:https://regex101.com/r/mI2tE5/1

对于评论,这更好:

Test[\n]*(.)