如何判断一个字符串中有几个英文字母,几个数字 例如一个字符串: 'aaa56ee78cc'我想写个存储过程,来求出输入的字符串中字母以及数字的个数。哪位大侠给个思路 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 length(str)-length(translate(str,' 0123...9abc...zABC...Z',' ')) 1:length(str)-length(replace(translate(str,'0123456789.',' '),' '))2:length(str)-length(replace(translate(str,abc..zABC...Z',' '),' ')) select length(trim((translate(str,'0123456789',' '))) "字符个数",length(trim(translate(str,'abc...zABC...Z',' '))) "数字个数"from table1 SQL> SELECT 'aaa56ee78cc' STR, 2 TRIM(TRANSLATE('aaa56ee78cc', '0123456789', ' ')) STR_1, 3 LENGTH(TRIM(TRANSLATE('aaa56ee78cc', '0123456789', ' '))) LEN 4 FROM DUAL; STR STR_1 LEN----------- ------- ----------aaa56ee78cc aaaeecc 7 oracle中好像不支持...省略号. 要写全. #include<stdio.h>int main(){ int Array[36]={0}; char e; int i=0; while((e=getchar())!='\n') { if(e>='a'&&e<='z') Array[int(e-'a')]++; if(e>='A'&&e<='Z') Array[int(e-'A')]++; if(e>='0'&&e<='9') Array[e-'0'+26]++; } e='A'; for(i;i<36;i++) { if(Array[i]!=0&&i<26) { printf("%c:%2d个 ",char(e+i),Array[i]); } else if(Array[i]!=0) printf("%c:%2d个 ",char('0'+i-26),Array[i]); if(i%5==0) printf("\n"); } return 0;} 求教关于oracle处理大数据的性能问题 rac启动问题 oracle 数据泵遇到的问题 oracle中错误代码如何查看?? 怎样用另一张表update一张表? 能不能对于两个ORACLE数据库中结构相同的的两个表进行INSERT INTO...(SELECT..)操作?? 怎么该写成 relational algebra ?? 触发器问题 Proc 中 Insert数据问题 求助!!!!语句优化 编写一个存储过程,要求返回参数至少有一个是结果集 新手问个低级问题
2:length(str)-length(replace(translate(str,abc..zABC...Z',' '),' '))
length(trim((translate(str,'0123456789',' '))) "字符个数",
length(trim(translate(str,'abc...zABC...Z',' '))) "数字个数"
from table1
2 TRIM(TRANSLATE('aaa56ee78cc', '0123456789', ' ')) STR_1,
3 LENGTH(TRIM(TRANSLATE('aaa56ee78cc', '0123456789', ' '))) LEN
4 FROM DUAL;
STR STR_1 LEN
----------- ------- ----------
aaa56ee78cc aaaeecc 7
int main()
{
int Array[36]={0};
char e;
int i=0;
while((e=getchar())!='\n')
{
if(e>='a'&&e<='z')
Array[int(e-'a')]++;
if(e>='A'&&e<='Z')
Array[int(e-'A')]++;
if(e>='0'&&e<='9')
Array[e-'0'+26]++;
}
e='A';
for(i;i<36;i++)
{
if(Array[i]!=0&&i<26)
{
printf("%c:%2d个 ",char(e+i),Array[i]);
}
else
if(Array[i]!=0)
printf("%c:%2d个 ",char('0'+i-26),Array[i]);
if(i%5==0)
printf("\n");
}
return 0;
}