我需要一個正則表達式來檢查字符串的值是'0'還是長度等於1到10的正數(也是第一個數字不能爲零的地方)。0或正數的正則表達式
我被卡住了,我可以得到0,但我無法得到正數。
以下是我有:
(^([0])$)|(^([1-9][0-9]{0-9})$)
這REG EXP看起來有點瘋狂,我已經嘗試了很多不同的東西,使更加瘋狂和瘋狂。
我需要一個正則表達式來檢查字符串的值是'0'還是長度等於1到10的正數(也是第一個數字不能爲零的地方)。0或正數的正則表達式
我被卡住了,我可以得到0,但我無法得到正數。
以下是我有:
(^([0])$)|(^([1-9][0-9]{0-9})$)
這REG EXP看起來有點瘋狂,我已經嘗試了很多不同的東西,使更加瘋狂和瘋狂。
對於一系列可能性,您使用逗號而不是連字符。
(^([0])$)|(^([1-9][0-9]{0,9})$)
但是,您正則表達式可以簡化爲:
^(0|[1-9][0-9]{0,9})$
提供更快,非正則表達式的方法:
static void Main(string[] args
{
string str = "12";
long test;
if(str.Length <= 10
&& long.TryParse(str, out test)
&& test >= 0)
{
//valid
}
}
這不接受0:P –
好點,更新 – Jonesopolis
會不會轉換成一整型更快和更容易? –
爲什麼不試圖解析它並忽略正則表達式? – Jonesopolis
你想驗證,還是提取文本? – willaien