![](/img/trans.png)
[英]how to write regular expression to validate a string using regex in C#
[英]Convert algorithm to validate NIPC / NIF into a C# Regex (Regular Expression)
我有一個簡單的算法可以驗證葡萄牙的NIPC / NIF標識:
private bool IsNIPCCorrect(String nifString)
{
int controlDigit = 0;
for (int i = 0; i < nifString.Length - 1; i++)
{
controlDigit += (int)Char.GetNumericValue(nifString[i]) * (10 - i - 1);
};
controlDigit = controlDigit % 11;
if (controlDigit <= 1)
{
controlDigit = 0;
}
else
{
controlDigit = 11 - controlDigit;
}
if (controlDigit == (int)Char.GetNumericValue(nifString[8]))
{
return true;
}
else
{
return false;
}
}
我想知道是否可以生成一些Regex來在幾行中驗證該標識。
初步驗證:
如何驗證:
我一直在考慮類似下一個初始模式= [0-9] {9} | \\ d {9}
但是我怎么也只能將Regex用於最終驗證呢?
問候!
正則表達式無法為您計算,但是首先要檢查的合適代碼是^ \\ d {9} $
您需要在運行其余代碼之前進行此檢查,就像字符串中沒有9個字符一樣,您會在nifString [8]點得到一個錯誤。
因此,無效的NIF 12345將導致錯誤而不是返回false。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.