正则表达式在新宗地编码中的应用
六盘水职业技术学院-小学教案网
李赫:正则表达式在新宗地编码中的应用
正则表达式在新宗地编码中的应用
李赫
(
华北地质勘查局五一九大队河北保定
071051
)
摘要
:
本文介绍了新的宗地编码规则及正则表达式,并利用正则表达式约束新的宗地编码,以达到减少日常工
作错误的目的。
关键词
:
宗地编码;正则表达式;应用
一、新宗地代码编制规
则介绍及探讨
2011年11月国土部下发了《宗地代码编制规则(试行)》,按照
其规定:在
县级行政辖区内,以乡镇、街道办事处为基础结合明显
线性地物划分土地管理区域为地籍区;根据实际情
况,可以以行政
村、街坊为基础将地籍区再划分为地籍子区。宗地代码采用五层
19位层次码结
构,按层次分别表示县级行政区划、地籍区、地籍子
区、土地权属类型、宗地号。
第一层次为县
级行政区划,代码为6位,采用《中华人民共和
国行政区划代码》GBT2260;第二层次为地籍区,
代码为3位,用阿
用阿拉伯数字拉伯数字表示;第三层次为地籍子区,代码为3位,
其中,第一
位表示土表示;第四层次为土地权属类型,代码为2位。
地所有权类型,用G、J、Z表示。“G”表示
国家土地所有权,“J”表示
集体土地所有权,“Z”表示土地所有权争议;第二位表示宗地特征
码,用A、B、S、X、C、D、E、F、W、Y表示。“A”表示集体土地所有权宗
“B”表示建设
用地使用权宗地(地表),“S”表示建设用地使用权地,
宗地(地上)“,X”表示建设用地使用权宗
地(地下),“C”表示宅基地
使用权宗地,“D”表示土地承包经营权宗地,“E”表示林地使用权宗
“F”表示草原使用权宗地,“W”表示未确定或有争议的土地,地,
“Y”表示其他土地使用
权宗地,用于宗地特征扩展。
第五层次为宗地号,代码为5位,用00001-99999表示,在相<
br>应的宗地特征码后顺序编码。
从《宗地代码编制规则(试行)》规定中我们可以看到,在日常工作中19位的宗地编码间是有很强的逻辑关系的,尤其是在土地
权属类型的两个码之间,其逻辑关
系如下:
第一位第二位
(
允许
)
第二位
(
禁止)
G
J
Z
B
、
S
、
X
、D
、
E
、
F
、
W
、
Y
A、
B
、
S
、
X
、
C
、
D、
E
、
F
、
W
、
Y
A
、C
WA
、
B
、
S
、
X
、
C<
br>、
D
、
E
、
F
、
Y
图1新旧宗地编
码对照表
表1土地权属类型代码逻辑表
在实际编码工作中,不只有“表1”所示的土地权属类型
编码逻
辑限制,由于我们的地籍管理工作一般都在一个县级行政区内进
行,所以宗地编码的前6
位基本也是固定不变的,例如:天津市武
::::::::::::::::::::::::::::
:::::::::::::::::
行的经验,它山之石,为我所用,不断提高驾驭全局的能力、综合
协
调能力、处理复杂问题的能力。
(三)以诚待人,努力提升情感的影响力
现实生活的
确如此,当你真诚、坦率地向对方表明自己的态度
或征求对方意见,而不是居高临下,闪烁其词,你就会
获得对方的
信任,相互产生一种良好印象。对基层领导工作来说,就是要讲诚
信,靠诚信为交流
思想铺路搭桥。讲诚信,一是要用真情。矫揉造
二作,虚情假意,只能引起教育对象的反感,不可能收到
好的效果。
要办实事,在力所能及的范围内,答应和许诺了别人的事,一定要
予以兑现,即使一
时办不到,只要及时给予说明,也能获得对方的
理解和通融,决不能“轻诺寡信”。第三要有爱心,爱是
所有教育管
理的基础,没有爱,就没有真正的教育管理。要使自己像磁场般紧
紧地把教育对象凝
聚在自己的周围,需要基层领导工作者在思想
上、工作上、生活上等各方面给教育对象以关爱。即使是一
个真诚
的微笑,一双鼓励的眼睛,一句亲切的问候,……都会使教育对象
产生神奇的效果。(四)讲究工作方法,努力提升艺术感染力
从大量的工作实例上看也能证明这一点,那就是在某些基
层
领导那里,不论是多么棘手多么难做的工作,他都有能力、有办法
完成任务,而在另一些人那
里,就往往做不好。究其原因,除了责任
心的强弱之外,更主要的就是有无工作艺术所致。基层领导工作
虽
然是一项严肃的工作,但并非是板着脸孔的刻板工作,而是一项充
满艺术性的工作。需要基层
领导者掌握工作技巧,根据不同的环
不同的对象,采取不同的方法。其中在尊重教育对象的基础上,境、
探讨、交流的方式更容易被教育对象接受。为此,思想政治工作者
要在口头表达、沟通协调等方
面下功夫,增强自己的语言感染力,
以更好地达到教育效果。
综上所述,基层领导者要从品德、
知识才干、气质等诸多方面
下功夫,不断发现不足,充实自己,提升自己的人格魅力,不断增强
做基层领导的能力,为促进企业和谐、稳定、持续发展做出更大的
贡献。
·
178·
第
12
期
2012
年
6
月<
br>企业研究
Businessresearch
总第
402
期
清
区代码为“120114”。
FunctionCheck(rng)AsString
Wit
hCreateObject(
二、正则表达式介绍
.Global=True
正则表
达式是对字符串操作的一种逻辑公式,就是用事先定
.Pattern=
义好的一些特定字符、
及这些特定字符的组合,组成一个“规则字
120114(?!000)d{3}d{3}((G[BS
XDEFWY])|(J[ABSXCDEFWY])|
符串”,这个“规则字符串”用来表达对字符串
的一种过滤逻辑。
我们将正则表达式中的字符称为元字符,其所代表的意思为:
(Z[ABSX
CDEFY]))(?!00000)d{5}$$
Check=.Test(rng)
“.”点
:匹配任何单个字符。“$$”匹配行结束符。“^”匹配一行的开始。
EndWith
“*”匹
配0或多个正好在它之前的那个字符。“”这是引用符,用来
EndFunction
“[]”
匹配将这里列出的这些元字符当作普通的字符来进行匹配。
在Excel“A1”单元格中录入宗地号,
如“12JA00001”,
括号中的任何一个字符。“<>”匹配词(word)的开始(<)和结束
在“A2”单元格中录入自定义公式“=Check(A1)”。当“A1”单元格内
(>)。
“()”将(和)之间的表达式定义为“组”(group),并且将匹
容符合新宗地编码规则时,“A
2”单元格显示“True”,不符合显示
配这个表达式的字符保存到一个临时区域(一个正则表达式中
最
。结果如表2。
,它们可以用1到9的符号来引用。“|”将两个
“False”<
br>多可以保存9个)
匹配条件进行逻辑“或”(Or)运算。“+”匹配1或多个正好在它之
宗地号正确性
前的那个字符。“?”匹配0或1个正好在它之前的那个字符。“{i,j}”
12JA01110True
匹配指定数目的字符,这些字符是在它之前的表达式定义的。
12
JX00010False
三、用正则表达式对新宗地编码建立约束关系
12GA01112F
alse
通过第二部分的分析,我们得到新宗地编码规则对宗地号约
12ZA00001Tru
e
束主要有两种:第一种为宗地编码第13位与第14位存在着逻辑
12JD01114Fal
se
第二种为宗地编码关系,这是造成平时宗地编码错误的主要原因。
表2
前6位对于
某个行政区而言是固定不变的,平时工作也有可能将
(二)在编程环境下的应用
其录错,造成宗
地编码错误。那么如何利用正则表达式对宗地编码
正则表达式大多是在编程环境下使用的。对于不同的编
程语
进行约束呢?下面我们就以天津市武清区(120114)为例进行分析,
言,正则表达式
的声明方式略有不同,但是表达式内容基本相同。
总结出匹配正则表达式:
下面举几个例子:<
br>“^”。(一)使用正则表达式进行匹配首先应该有行起始符
⒈C#中判断宗地号是否正确:(二)新的编码规则规定宗地编码前6位为县级行政区代码,
h(subjectString,@
120114(?!000)d{3}d{3}((G
那么我们的表达式归纳为:^120114。天津
市武清区代码为120114,
[BSXDEFWY])|(J[ABSXCDEFWY])|(Z[A
BSXCDEFY]))(?!00000)d{5}
(三)新的编码规则规定:宗地编码第7到第9位
为地籍区编
$$
001-999,用正则表达式表示为:(?!000)d{3},我们码,变化
范围为:
⒉C++中判断宗地号是否正确:
^120114(?!000)d{3}。的表达式
归纳为:
TRegExRegEx(120114(?!000)d{3}d{3}((G[BSXDE
FWY])
(四)新的编码规则规定:宗地编码第10到第12位为地籍子
|(J[ABSXC
DEFWY])|(Z[ABSXCDEFY]))(?!00000)d{5}$$)Z
000-999
,用正则表达式表示为:d{3},我们的区编码,变化范围为:
h(SubjectString);
表达式归纳为:^120114(?!000)d{3}d{3}。
⒊JAVA中判断宗地号是
否正确:
(五)新的编码规则规定:宗地编码第13到第14位为土地权属类
Patternr
egex=
型代码,相关的约束关系见表1。我们利用正则表达式表示其关系为:
e(1201
14(?!000)d{3}d{3}((G[BSXDEFWY])|(J
那么我(G[BSXDEF
WY])|(J[ABSXCDEFWY])|(Z[ABSXCDEFY]),
[ABSXCDEFW
Y])|(Z[ABSXCDEFY]))(?!00000)d{5}$$
^120114(?!000
)d{3}d{3}((G[BSXDEFWY])|(J们的表达式归纳为:
Matcherrege
xMatcher=r(subjectString);
[ABSXCDEFWY])|(Z[ABS
XCDEFY]))
foundMatch=s();
(六)新的编码规则规定:宗地编码第1
5到第19位为宗地号,
五、结论
变化范围为00001-99999,用正则表达式表示为:
(?!00000)d{5},我
正则表达式是专业的处理字符串的工具,用它来解决实际工
们
的表达式归纳为:^120114(?!000)d{3}d{3}((G[BSXDEFWY])|(J
快捷。在新的宗地编码规则出现以后,作中遇到的相关问题简便、
[ABSXCDEFWY])|(Z
[ABSXCDEFY]))(?!00000)d{5}
宗地编码经常出现各种各样的逻辑错误,严重
影响地籍工作的效
(七)正则表达式的结尾需要有行结束符“$$”。我们的正则表达
率,甚至产
生了法律纠纷。本文通过将正则表达式引入宗地编码工
^120114(?!000)d{3}d{3}
((G[BSXDEFWY])|(J式最终归纳为:
作中,从而避免了编码逻辑错误的发生,对提高土
地管理水平有着
[ABSXCDEFWY])|(Z[ABSXCDEFY]))(?!00000)d
{5}$$
积极的意义。
四、正则表达式在宗地编码工作中的应用
由于正则表达式主要应
用对象是文本,因此它在各种文本编
辑器场合都有应用,小到著名编辑器EditPlus,大到Mic
rosoft
Office、VisualStudio等大型编辑器,都可以使用正则表达式来处理<
br>文本内容。所以,用正则表达式约束宗地编码在实际工作中的使用
到使用编程语言也是很广泛的,
从简单的EXCEL录入宗地属性,
编写关于宗地的程序。下面我举几个简单的例子:
参考文献
:
(一)在
EXCEL
中的应用
[1]
正则表达式入门经典
(美)
AndrewWatt[M].2007
在Excel中点击“工具”—“宏”—“Vi
sualBasic编辑器”,在左边
[2]MasteringRegularExpression
s(
美
)[M].2009
(试行)国土资源部
[S].2011[3]宗地代码编制规则
栏“工程-VBAProject”中选择“模块1”,键入以下自定义函数代码
·
179
·