想用Java做一个能从txt中读取手机号并加以辨别(运营商以及地区)的程序

我了解如何从txt中读取并输出,但是要根据运营商以及地区进行辨别,就需要从手机号的前4位进行处理,因此相求高人解释一下,11位的数据如何只获取前4位?还有,如果是批量的手... 我了解如何从txt中读取并输出,但是要根据运营商以及地区进行辨别,就需要从手机号的前4位进行处理,因此相求高人解释一下,11位的数据如何只获取前4位?还有,如果是批量的手机号,有时候有写的不规范的,比如138XXXXXXXX,151XXXXXXXX;或者138XXXXXXXX,151XXXXXXXX;就是中间连接的有中文字符有英文字符,应当如何去用Java处理?万分感谢 展开
 我来答
刘夏炎
2011-10-19 · TA获得超过351个赞
知道小有建树答主
回答量:370
采纳率:0%
帮助的人:380万
展开全部
设计思路是
环境:未知长度的TXT文本 其中有 11位 手机号码 1个或多个
目的:读取其中号码前4位 来分辨运营商和地区
1 读取1个或多个手机号
规则是 全数字 1开始 长度 11位, 这个比较好判断 直接按字符读取 TXT中数据 判断这个字符是否是1 ,如果是1 就开始 读11位 正则判断是否符合手机号规则 ,符合就 记录下这个号 用字符串来存储就可以了 比如 String hao="138xxxxxxxx-133xxxxxxxx" 中间用-间隔开就可以了直到读完了TXT 获得全部符合 手机号的一个 字符串
2 获得前4位 号 并判断运营商及地区
假如上面取了3个号 组成了一个字符串 hao="138xxxxxxxx-133xxxxxxxx-155xxxxxxxx"
先按“-” 来分组 获得 String 的数组 zhao={"138xxxxxxxx" ,"133xxxxxxxx","155xxxxxxxx"}
遍历这个数组 分别取出 每个字符串的前4位 String 里有方法 你可以查下API 用正则判断下这4位 或者 某特定位置有什么规则 你自己写就可以了。
百度网友5195152
2011-10-19 · TA获得超过1164个赞
知道大有可为答主
回答量:1314
采纳率:0%
帮助的人:712万
展开全部
11位的数据如何只获取前4位:substring()

不规范:正则表达式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式