本文目录
c语言 输入 两串字符只要每串字符的前两位..怎么设计代码
#include "stdio.h"int main(){char str;int i;scanf("%s",str); //方法1,截取字符,因为字符串的结束标志是’\0’,所以只需将字符串str的第三个字符变为 ’\0’即可。str=’\0’;printf("%s\n",str);//一个字符一个的输出for(i=0;i《2;i++)printf("%c",str); }
sql如何截取字符串中前面的数字
如果提取字符串中的数字,需要自定义函数,以下函数包含截取字符串中的数字、字母、汉字等。
create function fn_myget(@str as varchar(max),@category as varchar(10)=’Chinese’,@start as int=1,@end as int=100000)returns varchar(max)asbegin declare @i int=@start declare @lenstr int=len(@str) declare @str1 varchar(max) declare @strre varchar(max)=’’ while @i《=@lenstr and @i《=@end begin set @str1=substring(@str,@i,1); --提取汉字 if(@Category=’Chinese’) begin if(len(@str1)!=datalength(@str1)) set @strre=@strre+@str1 end --提取字母 else if(@Category=’Letters’) begin if((ascii(@str1)》=65 and ascii(@str1)《=90 or ascii(@str1)》=97 and ascii(@str1)《=122)) set @strre=@strre+@str1 end --提取数字 else if(@Category=’Digital’) begin if(ascii(@str1)》=48 and ascii(@str1)《=57) set @strre=@strre+@str1 end else set @strre=’输入错误’ set @i=@i+1 end return(@strre)end
测试:
1、截取字符串dsajf23423423中的数字
select dbo.fn_myget(’dsajf23423423’,’Digital’,1,1000)
结果:
2、截取字符串dsajf23423423中的字母
select dbo.fn_myget(’dsajf23423423’,’Letters’,1,1000)
结果:
3、截取“说多了几分134lljjf爱”中的中文
select dbo.fn_myget(’说多了几分134lljjf爱’,’Chinese’,1,1000)
结果:
自定义函数说明:
函数共需要4个参数:
第一个参数是要截取的字符串;
第二个参数根据要截取的内容不同,分别有“Digital”(截取数字)、“Letters”(截取字母)、“Chinese”(截取中文);
第三个参数代表截取的起始位;
第四个参数代表截取的截取的结束位。
.NET截取字符串显示两位的例如01
用Substring截取如新闻标题截取可以这样定义一个方法(第一参数是原字符串,后一个是要截取多少个长度)public string substr(string sourceStr, int len) { string str; if (sourceStr.Length 》 len) { str = sourceStr.Substring(0, len) + "..."; } else str = sourceStr; return str; }