当前位置:IT快活林→快活林学院网页制作

怎么判断memo每列的内容是不是电话号码或者是手机号码

作者:本站整理   发布时间:2008-9-8 16:44:20


怎么判断memo每列的内容是不是因为电话号码或者是是手机号码怎么判断memo每列的内容是不是因为电话号码或者是是手机号码  不是就不要,是就要  怎么写--
电话号码要判断是不是因为057开头的---
取字符串,判断是否都为数字,
手机还需要判断是否11位, 前三位为130-133 联通 ;前三位为135-139或者是前四位为1340-1348 移动; 其他的为电信
代码自己写:)---
判断连续7个数字以上.---
最笨的方法:
两个:I.电话(可以用函数 返回长度(手机是11位)如果大于8 就用POS 找'-');II.手机(给他前三位(135,134,158,159,13VI....)建一个记录集)),再进行判断

这两个判断不出来就抹杀掉

                      ---
晕`` 我知道怎么判断这些``就是不知道怎么写呀``呵呵`  代码  555---
代码  代码```呵呵` `  ---
Delphi(Pascal) codevar i,k,j,l:integer;s:string;beginmemoII.Clear; //memo2输出结果,所以必须先清空with memo1 do //memo1存放号码beginfor i:=0 to Lines.Count-1 do //循环得到每行文本begins:=Lines.Strings[i];//得到第i行文本f:=0; //f为'-'的个数,这里起标志作用l:=Length(s); //l存放文本长度for j:=1 to l doif (s[j]='-') thenbeginf:=f+1; //'-'的个数加一if f=1 then k:=j //只有一个'-',则记录下'-'符号的位置else break; //超出一个'-',退出循环endelse if (s[j]<'0')or(s[j]>'9') then //出现非数字,且非'-'beginf:=2; //做标记break; //退出循环end;if (f=0)and(l=11) then //标志为0,代表手机,判断长度为11位,可以自己改memoII.Lines.Add('手机号码')else if (f=1)and(k>1)and(k<l) then //标记为1,代表电话号码,判断'-'位置,可以自己该memoII.Lines.Add('电话号码')else memoII.Lines.Add('普通文本'); //非电话号码,非手机号码,或者是出现了非数字且非'-',普通文本end;end;---
哦 对了  那代码我用记事本写的 没测试过 IT快活林网的站长自己测试一下
》热 点 关 注