我想檢查一個字符串是否屬於ABC123類型。C#檢查字符串是否屬於ABC123
- 字符串的長度必須是6
- 只有字母和數字是允許的。
- 字符串的前三個值必須是字母。
這就是我所做的。我如何改進代碼?
private void ValidationOfFlightCode(string flightCode)
{
if (flightCode.Length == 6)
{
bool state = Regex.IsMatch(flightCode, @"^[a-zA-Z0-9]+$");
if (state)
{
bool isLetter = false;
for (int i = 0; i < 3; i++)
{
isLetter = Char.IsLetter(flightCode, i);
if (!isLetter)
break;
}
if (isLetter)
{
MessageBox.Show(flightCode + ": " + state);
}
else
{
MessageBox.Show("The letters must be before the numbers");
}
}
else
{
MessageBox.Show("Only letters and numbers are allowed!");
}
}
else
{
MessageBox.Show("Flight Code must be 6 characters long");
}
}
你是否需要針對每個錯誤的特定錯誤消息?否則,這個正則表達式將完成這項工作:'[A-Z] {3} [A-Z0-9] {3}'。 – alexn 2013-04-21 13:35:56