正则表达式(匹配单词+某个数字)C#

时间:2011-07-25 16:42:27

标签: c# regex

很抱歉这样可以快速询问所有正则表达式专家:)

我可以使用哪个C#正则表达式匹配单词的结尾+某个数字

EG。字符串结尾与“故事”匹配+ 0或更多数字

"ThisIsStory1"    = true
"ThisIsStory2000" = true
"ThisIsStory"     = true
"Story1IsThis"    = false
"IsStoryThis1"    = false

希望这是有道理的

我可以插入C#的正则表达式非常棒。

由于

5 个答案:

答案 0 :(得分:6)

你需要这样的东西Story[0-9]*$

所以它匹配故事(忽略之前的任何内容,你可能需要添加更多),然后故事和字符串结尾之间的0或更多数字。

答案 1 :(得分:1)

尝试[A-Za-z]*Story[0-9]*

如果您想检查整行,^[A-Za-z]*Story[0-9]*$

答案 2 :(得分:1)

匹配故事前的人物数量然后故事????用这个:

"[A-Za-z]*(s|S)tory\d*$"

答案 3 :(得分:0)

string compare = "story1withANumber";
Regex regex = new Regex(@"[A-Za-z]+Story[0-9]*");

if (regex.IsMatch(compare))
{ 
    //true
}

regex = new Regex("[0-9]");

if (regex.IsMatch(compare))
{ 
    //true
}

答案 4 :(得分:0)

符合您标准的.NET正则表达式是:

Story\d*\b

(如果需要,请使用Regex.IgnoreCase选项。)

\b与字边界匹配,因此Story1IsThis将不匹配,但ThisIsAStory1将匹配。 “故事”一词不需要结束字符串,因此字符"ThisIsAStory234 ThisIsNot"将匹配Story234