学习C#中,请牛人勿耻笑题目:
输入一段文字,判断输入的文字是否是小写字母,如果是就提示“验证正确是小写字母”。不是就提示“验证失败”请不要用正则判断,我自己用char的islower方法,可是在foreach的时候,有点小问题,想不出解决办法
特来请教。
private void button2_Click(object sender, EventArgs e)
{
char[] chars = textBox2.Text.ToCharArray(); foreach (char c in chars)
{
if (!char.IsLower(c))
{
MessageBox.Show("不合格");
break; //退出循环
}
}
MessageBox.Show("合格");//输入Aa会有2次提示。
}
正则的判断我会的,大家就不用说了,就用islower的方法帮我解决下吧。正则System.Text.RegularExpressions.Regex.IsMatch(str, @"^[a-z]+$");=========因为实在没多少分,还请大家谅解C#charislower
输入一段文字,判断输入的文字是否是小写字母,如果是就提示“验证正确是小写字母”。不是就提示“验证失败”请不要用正则判断,我自己用char的islower方法,可是在foreach的时候,有点小问题,想不出解决办法
特来请教。
private void button2_Click(object sender, EventArgs e)
{
char[] chars = textBox2.Text.ToCharArray(); foreach (char c in chars)
{
if (!char.IsLower(c))
{
MessageBox.Show("不合格");
break; //退出循环
}
}
MessageBox.Show("合格");//输入Aa会有2次提示。
}
正则的判断我会的,大家就不用说了,就用islower的方法帮我解决下吧。正则System.Text.RegularExpressions.Regex.IsMatch(str, @"^[a-z]+$");=========因为实在没多少分,还请大家谅解C#charislower
bool isLower=true;
foreach (char c in chars)
{
int ci = (int)c;
if (ci <97||ci>122)
{
MessageBox.Show("不合格");
isLower=false;
break; //退出循环
}
}
if(isLower)
{
MessageBox.Show("合格");
}[/code]
{
char[] chars = textBox2.Text.ToCharArray();
foreach (char c in chars)
{
if (c<'a' || c>'z')
{
MessageBox.Show("不合格");
return; //退出循环
}
}
MessageBox.Show("合格");//输入Aa会有2次提示。
}
public bool isLower(string str)
{
bool result = true;
char[] chars = str.ToCharArray();
foreach (char c in chars)
{
if (!char.IsLower(c))
{
result = false;
break;
} }
return result;
}然后外部调用
if(!isLower(textBox2.Text))
{
MessageBox.Show("不合格");
}
MessageBox.Show(textBox2.Text.Where(a => !char.IsLower(a)).Count() > 0 ? "不合格" : "合格");