你好我想纠正一个正则表达式,将采取一个字符串,并确保其与“R”开头,后面4个数字,然后什么需要帮助的正则表达式
如。 RXXXX .................
任何人都可以帮助我吗?这是ASP.NET
你好我想纠正一个正则表达式,将采取一个字符串,并确保其与“R”开头,后面4个数字,然后什么需要帮助的正则表达式
如。 RXXXX .................
任何人都可以帮助我吗?这是ASP.NET
你希望它在行的开头,而不是在任何地方。此外,为了提高效率,您不希望末尾的.+
或.*
因为会匹配不必要的字符。所以下面的正则表达式是你真正想要的:
^R\d{4}
它很有趣,我在考虑效率,并删除了$,因为我正在输入我的答案。不知道它是如何消除我的。*你得到我的投票!由于他对基本正则表达式的理解是零,所以整个区分大小写的事情可能会像我一样指出。 – pinkfloydx33 2010-11-05 00:13:19
这应该这样做...
^R\d{4}.*$
\d{4}
比赛4个位数.*
是一个简单的方法来匹配任意字符0次或多次^
和结束$
锚点确保没有任何前后任何地址文森特建议,为您的特定任务,它甚至可以被简化为这...
^R\d{4}
因为正如你所说,它并不真正的问题是什么如下。
'。* $'没用,你可以删除它。 – 2010-11-05 00:11:42
/^R\d{4}.*/
除非你只想要资本的r
^R\d{4}.*
^
字符串中的第一个字符前的位置相匹配设置不区分大小写选项。\d
匹配任何数字字符(它是相同的如[0-9]){4}
表明存在必须是4号,和.*
匹配0个或多个其他字符要用途:
string input = "R0012 etc..";
Match match = Regex.Match(input, @"^R\d{4}.*", RexOptions.IgnoreCase);
if (match.Success)
{
// Success!
}
注意使用RexOptions.IgnoreCase
忽略字母R的情况下,(所以它会匹配其启动W¯¯串ith r。如果您不想进行不区分大小写的匹配,请将其保留。
这是如此可怕_basic_正则表达式,我建议你把你的生活的一个半小时,只是粉饰http://www.regular-expressions.info /之后,你应该明白知道。 – Wrikken 2010-11-05 00:08:19
或者他可以花两分钟的时间提问,学习一些东西并节省时间。什么是不必要的人喜欢你给他垃圾。 – 2010-11-05 00:14:18
谢谢特拉维斯,我没那么有经验,任何帮助都很好。 – BigJim 2010-11-05 00:18:04