链接
https://github.com/yuanzheng123/031702230
一.PSP表格
PSP.2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 60 | 80 |
· Estimate | 估计这个任务需要多少时间 | 80 | 80 |
Development | 开发 | 720 | - |
· Design Spec | · 生成设计文档 | - | - |
· Design Review | 设计复审 | - | - |
· Coding Standard | · 代码规范 (为目前的开发制定合适的规范) | 60 | 80 |
· Design | · 具体设计80 | 120 | |
· Coding | · 具体编码 | 180 | 240 |
· Code Review | 代码复审- | - | |
· Test | 测试 | 120 | - |
· Postmortem & Process Improvement Plan | 总结 | 10 | 10 |
- | 总计 | 1500 | - |
二.思路
1.只想到关键字,后来觉得不对,用正则表达式,但是我不会啊,就学了很久,只能去膜拜大佬了。
2.步骤
-第一步:用逗号分开名字
-第二步:用正则表达式提取13位手机号
-第三步:分析地址的划分
三.计算模块接口的设计与实现过程。
1.函数类属性及方法作用
函数名或方法名 | 作用 |
---|---|
User类构造函数 | 输入整个字符串,并得到名字与手机号,并分割出地址串 |
User类AddressSolution函数 | 输入地址串,对地址分析 |
User2类webhelp函数 | 调用百度地图API相应查询 |
User类get1,get2函数 | 对一类题二类题的结果区分 |
User类getall函数 | 对所有属性结果的处理 |
2.关键代码。
代码关键在于调用API搞定前三级,赋值给province,city,district变量
然后再对剩余地址进行5级或7级的分析
String[] arr=uu.webhelp(b);//调用API,然后赋值前三级
”(.*?区|.*?街道|.*?镇|.*乡)?(.*)“//5级分类后两级
“(.*?街道|.*?镇|.*乡)?(.*?路|.*?巷|.*?街)?([\d]+?号|[\d]+.?道)?(.*)”//7级之类后三级
3.单元测试
{"姓名":"李四","手机":"13756899511","地址":["福建省","福州市","鼓楼区","鼓西街道","湖滨路","110号","湖滨大厦一层"]}
{"姓名":"张三","手机":"13599622362","地址":["福建省","福州市","闽侯县","上街镇","福州大学10#111"]}
{"姓名":"王五","手机":"18960221533","地址":["福建省","福州市","鼓楼区","","五一北路","123号","福州鼓楼医院"]}
{"姓名":"小美","手机":"15822153326","地址":["北京市","北京市","东城区","交道口东大街1号北京市东城区","人民法院"]}
{"姓名":"小陈","手机":"13965231525","地址":["广东省","东莞市","","凤岗镇","凤平路13号"]}
{"姓名":"小陈","手机":"13015738826","地址":["福建省","福州市","仓山区","","公园路","15号",""]}
评测工具不会用,怪自己太菜,一打开就弹窗。上面是自己测得数据。