使用正则表达式在字符串中查找字符串

时间:2019-07-08 12:14:10

标签: c# regex

因此,我试图找到一种在字符串中提取字符串的有效方法,我相信正则表达式可能是实现此目的的最佳方法,但是我不熟悉正则表达式,也不熟悉C#和如何去建造它。

我目前正在使用for循环,该搜索在字符串中搜索一个序列,然后提取该序列之后的下3个条目,但是由于条目的大小等原因,它不准确。

-字符串示例

 heythereiamexample: 12instackoverflow

虽然目标字符串之间的字符不同,但字符串可能会有所不同

-目标字符串示例

example: 12

现在,我不必介意提取的内容,无论是相对于字符串的数字还是完整的字符串(包括数字),但是一个因素是字符串必须以[0-9] +结尾

所以预期的输出显然是

example: 12

2 个答案:

答案 0 :(得分:1)

您可能会从中得到一些想法:

Pattern :  example:\s*\d+

    Match groups:
    1.  example: 12

https://rubular.com/r/myxvmRb20ukfEP

            string strtext = @"heythereiamexample: 12instackoverflow";
            Regex rex= new Regex(@"example:\s*\d+");

            Match match= rex.Match(strtext);

答案 1 :(得分:0)

您可以使用此:

string text = "blabla12";
string regex = @"\D*(\d+)$";
Match match = Regex.Match(text, regex);
if(match.Success)
{
 string matched = match.Groups[1].Value;
 Console.WriteLine(matched);
}