16 个解决方案
#1
比较笨的方法,判断ASCII码:
string s = "abcd45612,asd";
int characters = 0;
int numbers = 0;
int symbols = 0;
foreach (char c in s)
{
if ((c >= 33 && c <= 47) || (c >= 58 && c <= 64) || (c >= 91 && c <= 96) || (c >= 123 && c <= 126))
symbols++;
if ((c >= 65 && c <= 90) || (c >= 97 && c <= 122))
characters++;
if (c >= 48 && c <= 57)
numbers++;
}
Console.WriteLine("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols);
#2
将字符串转换为 char类型的数组
char[] operator = string.ToCharArray()
for(int i = 0 ;i < operator.Lenght;i++)
{
operator[i].isDigit//是否为十进制数字isNumber 相关的方法去看Char类
}
char[] operator = string.ToCharArray()
for(int i = 0 ;i < operator.Lenght;i++)
{
operator[i].isDigit//是否为十进制数字isNumber 相关的方法去看Char类
}
#3
好东西,学习了
#4
真的是好东西。收了
#5
这个思路好
#6
为这个顶
我是小菜鸟! 说的不好清见谅, 希望能够帮到你!
#7
根据2楼提供的思路修改了一下:
string s = "abcd45612,asd";
int characters = 0;
int numbers = 0;
int symbols = 0;
foreach (char c in s)
{
if(char.IsPunctuation(c))
symbols++;
if(Char.IsLetter(c))
characters++;
if(char.IsDigit(c))
numbers++;
}
Console.WriteLine("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols);
#8
上面的代码写在哪个位置?请指点?
#9
那你要用在什么地方?
#10
我是想在一个页面上加一个textbox和一个按钮button,点击button之后获取textbox的值同时加以判断,我试了一下,加在button事件里好像没有反应?
#11
winform or webform?
winform:
MessageBox.Show(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
webform:
Reponse.Write(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
winform:
MessageBox.Show(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
webform:
Reponse.Write(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
#12
谢谢,非常感谢!搞定了,能给个qq号码吗?:)
#13
176342053不过我很少上的
#14
想和你探讨问题的时候怎么联系你啊,你总有一个联系方式吧?
#15
就在csdn上给我发消息或者在我空间留言都可以,
我上csdn比较多
我上csdn比较多
#16
学习了
#1
比较笨的方法,判断ASCII码:
string s = "abcd45612,asd";
int characters = 0;
int numbers = 0;
int symbols = 0;
foreach (char c in s)
{
if ((c >= 33 && c <= 47) || (c >= 58 && c <= 64) || (c >= 91 && c <= 96) || (c >= 123 && c <= 126))
symbols++;
if ((c >= 65 && c <= 90) || (c >= 97 && c <= 122))
characters++;
if (c >= 48 && c <= 57)
numbers++;
}
Console.WriteLine("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols);
#2
将字符串转换为 char类型的数组
char[] operator = string.ToCharArray()
for(int i = 0 ;i < operator.Lenght;i++)
{
operator[i].isDigit//是否为十进制数字isNumber 相关的方法去看Char类
}
char[] operator = string.ToCharArray()
for(int i = 0 ;i < operator.Lenght;i++)
{
operator[i].isDigit//是否为十进制数字isNumber 相关的方法去看Char类
}
#3
好东西,学习了
#4
真的是好东西。收了
#5
这个思路好
#6
为这个顶
我是小菜鸟! 说的不好清见谅, 希望能够帮到你!
#7
根据2楼提供的思路修改了一下:
string s = "abcd45612,asd";
int characters = 0;
int numbers = 0;
int symbols = 0;
foreach (char c in s)
{
if(char.IsPunctuation(c))
symbols++;
if(Char.IsLetter(c))
characters++;
if(char.IsDigit(c))
numbers++;
}
Console.WriteLine("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols);
#8
上面的代码写在哪个位置?请指点?
#9
那你要用在什么地方?
#10
我是想在一个页面上加一个textbox和一个按钮button,点击button之后获取textbox的值同时加以判断,我试了一下,加在button事件里好像没有反应?
#11
winform or webform?
winform:
MessageBox.Show(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
webform:
Reponse.Write(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
winform:
MessageBox.Show(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
webform:
Reponse.Write(string.Format("共有{0}个字母,{1}个数字,{2}个标点", characters, numbers, symbols));
#12
谢谢,非常感谢!搞定了,能给个qq号码吗?:)
#13
176342053不过我很少上的
#14
想和你探讨问题的时候怎么联系你啊,你总有一个联系方式吧?
#15
就在csdn上给我发消息或者在我空间留言都可以,
我上csdn比较多
我上csdn比较多
#16
学习了