| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 1044 人关注过本帖
标题:关于DBF中地址补全省市全名址的问题
只看楼主 加入收藏
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:173
帖 子:7425
专家分:17574
注 册:2012-2-5
  得分:0 
从上传的四条数据来看,还是有规律的。

坚守VFP最后的阵地
2017-12-30 11:41
lishuo9913
Rank: 1
等 级:新手上路
帖 子:15
专家分:8
注 册:2013-3-2
  得分:0 

里面有测试数据和全国省市列表
不要求完全补全,例如:山大南路26号**** 列入地址不详中就可以
地址中有地市名称的,如:南京,南京市一类的,补全为:江苏省南京市********
附件: 您没有浏览附件的权限,请 登录注册
2017-12-30 12:01
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:173
帖 子:7425
专家分:17574
注 册:2012-2-5
  得分:20 
程序代码:
close databases
create cursor dz (处理前 c(120),处理后 c(140))
append from 测试 fields 处理前

use 全国 in 0 alias qg
select qg
scan
    sf=alltrim(省份)
    sj=alltrim(市级)
    select dz
    cstr=""
    scan
        do case
            case occurs(sj,处理前)=2
                n=atc(sj,处理前,2)
                cstr=sf+sj+substr(处理前,n+len(sj))
            case occurs(sj,处理前)=1
                n=atc(sj,处理前)
                cstr=sf+sj+substr(处理前,n+len(sj))
        endcase
        if sj$处理前
            replace 处理后 with cstr
        endif
    endscan
endscan
select dz
browse




全国省市县数据做了部分修改,两个表的名称也做了修改
附件: 您没有浏览附件的权限,请 登录注册

坚守VFP最后的阵地
2017-12-30 19:14
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:173
帖 子:7425
专家分:17574
注 册:2012-2-5
  得分:0 
附件: 您没有浏览附件的权限,请 登录注册

坚守VFP最后的阵地
2017-12-30 19:16
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:173
帖 子:7425
专家分:17574
注 册:2012-2-5
  得分:0 
处理后内容为空,多数为省辖市名称不全造成的。运行时间稍长。

坚守VFP最后的阵地
2017-12-30 19:22
hyswcyh
Rank: 8Rank: 8
等 级:贵宾
威 望:19
帖 子:378
专家分:888
注 册:2004-11-23
  得分:0 
留个脚印。以后可能用得着。
2017-12-31 10:22
schtg
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:18
帖 子:527
专家分:686
注 册:2012-2-29
  得分:0 
@sdta,高!
2017-12-31 14:56







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031663 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved