校验身份证的行政区域代码(包含已撤销区域代码)2021年8月31日更新

1. 背景

       根据身份证、统一社会信用代码的编码规则,身份证前6位和统一社会信用代码中的第3位到第8位均为行政区域6位编码。 为了校验数据库中用户填写的编号是身份证号码,还是统一社会信用代码,需要一份行政区域代码的编码表。

2. 行政区域代码数据整理

2.1 数据搜集来源

        搜索了民政部和统计局官方行政编码信息,没有按年汇总的完整信息,且没有覆盖已撤销行政区域的历史代码。

- 中华人民共和国民政部

国家统计局>>统计用区划和城乡划分代码

        最终,检索到来自zxinc.org整理的编码表,极大程度上解决了我的问题。 

        关于zxinc.org网页中的行政区域划分代码的使用,做两点补充:

- 虽然网页中没有提及,但可以判断已撤销的区域,作者加了[]来区分。通过和民政部最新的代码对比,有些加了[]标识的已撤销区域,其实还在使用中。

- 该网页信息用于身份证的识别,里面有一些非国标的编码,在民政部的编码中是找不到的。比如:830000 台湾省(非国标,用于身份证)。感觉到了作者的用心。

2.2 整理后的参考数据

        因为我的需求是保留唯一、完整的行政区域6位数据编码,区域中文做到说明就可以了。在此基础上,将上方搜集来的数据做了整合处理,主要是1)对同一个行政区域编码存在多个区域对应的情况做了去重;2)只有已撤销的区域,中文区域名使用[]来标识。

整理后的内容分享给大家,如果内容有错误或有遗失,也请大家留言评论,这将有效帮助到我对该份数据的维护。❥(^_-)

编码    区域
110000	北京市
110100	市辖区
110101	东城区
110102	西城区
110103	[崇文区]
110104	[宣武区]
110105	朝阳区
110106	丰台区
110107	石景山区
110108	海淀区
110109	门头沟区
110110	[燕山区]
110111	房山区
110112	通州区
110113	顺义区
110114	昌平区
110115	大兴区
110116	怀柔区
110117	平谷区
110118	密云区
110119	延庆区
110200	[县]
110221	[昌平县]
110222	[顺义县]
110223	[通县]
110224	[大兴县]
110225	[房山县]
110226	[平谷县]
110227	[怀柔县]
110228	[密云县]
110229	[延庆县]
120000	天津市
120100	市辖区
120101	和平区
120102	河东区
120103	河西区
120104	南开区
120105	河北区
120106	红桥区
120107	[塘沽区]
120108	[汉沽区]
120109	[大港区]
120110	东丽区
120111	西青区
120112	津南区
120113	北辰区
120114	武清区
120115	宝坻区
120116	滨海新区
120117	宁河区
120118	静海区
120119	蓟州区
120200	[县]
120221	[宁河县]
120222	[武清县]
120223	[静海县]
120224	[宝坻县]
120225	[蓟县]
130000	河北省
130100	石家庄市
130101	市辖区
130102	长安区
130103	[桥东区]
130104	桥西区
130105	新华区
130106	[郊区]
130107	井陉矿区
130108	裕华区
130109	藁城区
130110	鹿泉区
130111	栾城区
130121	井陉县
130122	[获鹿县]
130123	正定县
130124	[栾城县]
130125	行唐县
130126	灵寿县
130127	高邑县
130128	深泽县
130129	赞皇县
130130	无极县
130131	平山县
130132	元氏县
130133	赵县
130181	辛集市
130182	[藁城市]
130183	晋州市
130184	新乐市
130185	[鹿泉市]
130200	唐山市
130201	市辖区
130202	路南区
130203	路北区
130204	古冶区
130205	开平区
130206	[新区]
130207	丰南区
130208	丰润区
130209	曹妃甸区
130221	[丰润县]
130222	[丰南县]
130223	[滦县]
130224	滦南县
130225	乐亭县
130226	[迁安县]
130227	迁西县
130228	[遵化县]
130229	玉田县
130230	[唐海县]
130281	遵化市
130282	[丰南市]
130283	迁安市
130284	滦州市
130300	秦皇岛市
130301	市辖区
130302	海港区
130303	山海关区
130304	北戴河区
130305	[郊区]
130306	抚宁区
130321	青龙满族自治县
130322	昌黎县
130323	[抚宁县]
130324	卢龙县
130400	邯郸市
130401	市辖区
130402	邯山区
130403	丛台区
130404	复兴区
130405	[郊区]
130406	峰峰矿区
130407	肥乡区
130408	永年区
130421	[邯郸县]
130422	[武安县]
130423	临漳县
130424	成安县
130425	大名县
130426	涉县
130427	磁县
130428	[肥乡县]
130429	[永年县]
130430	邱县
130431	鸡泽县
130432	广平县
130433	馆陶县
130434	魏县
130435	曲周县
130481	武安市
130500	邢台市
130501	市辖区
130502	襄都区
130503	信都区
130504	[郊区]
130505	任泽区
130506	南和区
130521	[邢台县]
130522	临城县
130523	内丘县
130524	任丘市(任邱市)

130525	隆尧县
130526	[任县]
130527	[南和县]
130528	宁晋县
130529	巨鹿县
130530	新河县
130531	广宗县
130532	平乡县
130533	威县
130534	清河县
130535	临西县
130581	南宫市
130582	沙河市
130600	保定市
130601	市辖区
130602	竞秀区
130603	[北市区]
130604	[南市区]
130605	[郊区]
130606	莲池区
130607	满城区
130608	清苑区
130609	徐水区
130621	[满城县]
130622	[清苑县]
130623	涞水县
130624	阜平县
130625	[徐水县]
130626	定兴县
130627	唐县
130628	高阳县
130629	容城县
130630	涞源县
130631	望都县
130632	安新县
130633	易县
130634	曲阳县
130635	蠡县
130636	顺平县
130637	博野县
130638	雄县
130681	涿州市
130682	定州市
130683	安国市
130684	高碑店市
130700	张家口市
130701	市辖区
130702	桥东区
130703	桥西区
130704	[茶坊区]
130705	宣化区
130706	下花园区
130707	[庞家堡区]
130708	万全区
130709	崇礼区
130721	[宣化县]
130722	张北县
130723	康保县
130724	沽源县
130725	尚义县
130726	蔚县
130727	阳原县
130728	怀安县
130729	[万全县]
130730	怀来县
130731	涿鹿县
130732	赤城县
130733	[崇礼县]
130800	承德市
130801	市辖区
130802	双桥区
130803	双滦区
130804	鹰手营子矿区
130821	承德县
130822	兴隆县
130823	[平泉县]
130824	滦平县
130825	隆化县
130826	丰宁满族自治县
130827	宽城满族自治县
130828	围场满族蒙古族自治县
130881	平泉市
130900	沧州市
130901	市辖区
130902	新华区
130903	运河区
130904	[郊区]
130921	沧县
130922	青县
130923	东光县
130924	海兴县
130925	盐山县
130926	肃宁县
130927	南皮县
130928	吴桥县
130929	献县
130930	孟村回族自治县
130981	泊头市
130982	任丘市
130983	黄骅市
130984	河间市
131000	廊坊市
131001	市辖区
131002	安次区
131003	广阳区
131021	[三河县]
131022	固安县
131023	永清县
131024	香河县
131025	大城县
131026	文安县
131027	[霸县]
131028	大厂回族自治县
131081	霸州市
131082	三河市
131100	衡水市
131101	市辖区
131102	桃城区
131103	冀州区
131121	枣强县
131122	武邑县
131123	武强县
131124	饶阳县
131125	安平县
131126	故城县
131127	景县
131128	阜城县
131181	[冀州市]
131182	深州市
132100	[邯郸地区]
132101	[邯郸市]
132121	[大名县]
132122	[魏县]
132123	[曲周县]
132124	[丘县(邱县)]
132125	[鸡泽县]
132126	[肥乡县]
132127	[广平县]
132128	[成安县]
132129	[临漳县]
132130	[磁县]
132131	[武安县]
132132	[涉县]
132133	[永年县]
132134	[邯郸县]
132135	[馆陶县]
132200	[邢台地区]
132201	[南宫市]
132202	[沙河市]
132221	[邢台县]
132222	[沙河县]
132223	[临城县]
132224	[内丘县(内邱县)]
132225	[柏乡县]
132226	[隆尧县]
132227	[任县]
132228	[南和县]
132229	[宁晋县]
132230	[南宫县]
132231	[巨鹿县]
132232	[新河县]
132233	[广宗县]
132234	[平乡县]
132235	[威县]
132236	[清河县]
132237	[临西县]
132300	[石家庄地区]
132301	[辛集市]
132302	[藁城市]
132303	[晋州市]
132304	[新乐市]
132321	[束鹿县]
132322	[晋县]
132323	[深泽县]
132324	[无极县]
132325	[藁城县]
132326	[赵县]
132327	[栾城县]
132328	[正定县]
132329	[新乐县]
132330	[高邑县]
132331	[元氏县]
132332	[赞皇县]
132333	[井陉县]
132334	[获鹿县]
132335	[平山县]
132336	[灵寿县]
132337	[行唐县]
132400	[保定地区]
132401	[定州市]
132402	[涿州市]
132403	[安国市]
132404	[高碑店市]
132421	[易县]
132422	[满城县]
132423	[徐水县]
132424	[涞源县]
132425	[定兴县]
132426	[完县]
132427	[唐县]
132428	[望都县]
132429	[涞水县]
132430	[涿县]
132431	[清苑县]
132432	[高阳县]
132433	[安新县]
132434	[雄县]
132435	[容城县]
132436	[新城县]
132437	[曲阳县]
132438	[阜平县]
132439	[定县]
132440	[安国县]
132441	[博野县]
132442	[蠡县]
132500	[张家口地区]
132501	[张家口市]
132521	[张北县]
132522	[康保县]
132523	[沽源县]
132524	[尚义县]
132525	[蔚县]
132526	[阳原县]
132527	[怀安县]
132528	[万全县]
132529	[怀来县]
132530	[涿鹿县]
132531	[宣化县]
132532	[赤城县]
132533	[崇礼县]
132600	[承德地区]
132601	[承德市]
132621	[青龙县]
132622	[宽城满族自治县]
132623	[兴隆县]
132624	[平泉县]
132625	[承德县]
132626	[滦平县]
132627	[丰宁满族自治县]
132628	[隆化县]
132629	[围场满族蒙古族自治县]
132700	[唐山地区]
132701	[秦皇岛市]
132721	[丰润县]
132722	[丰南县]
132723	[滦县]
132724	[滦南县]
132725	[乐亭县]
132726	[昌黎县]
132727	[抚宁县]
132728	[卢龙县]
132729	[迁安县]
132730	[迁西县]
132731	[遵化县]
132732	[玉田县]
132800	[廊坊地区]
132801	[廊坊市]
132821	[三河县]
132822	[大厂回族自治县]
132823	[香河县]
132824	[安次县]
132825	[永清县]
132826	[固安县]
132827	[霸县]
132828	[文安县]
132829	[大城县]
132900	[沧州地区]
132901	[沧州市]
132902	[泊头市]
132903	[任丘市(任邱市)]
132904	[黄骅市]
132905	[河间市]
132921	[沧县]
132922	[河间县]
132923	[肃宁县]
132924	[献县]
132925	[交河县]
132926	[吴桥县]
132927	[东光县]
132928	[南皮县]
132929	[盐山县]
132930	[黄骅县]
132931	[孟村回族自治县]
132932	[青县]
132933	[任丘县(任邱县)]
132934	[海兴县]
133000	[衡水地区]
133001	[衡水市]
133002	[冀州市]
133003	[深州市]
133021	[衡水县]
133022	[冀县]
133023	[枣强县]
133024	[武邑县]
133025	[深县]
133026	[武强县]
133027	[饶阳县]
133028	[安平县]
133029	[故城县]
133030	[景县]
133031	[阜城县]
139000	[省直辖县级行政区划]
139001	[武安市]
139002	[霸州市]
139003	[遵化市]
139004	[辛集市]
139005	[藁城市]
139006	[晋州市]
139007	[新乐市]
139008	[泊头市]
139009	[任丘市(任邱市)]
139010	[黄骅市]
139011	[河间市]
139012	[三河市]
139013	[南宫市]
139014	[沙河市]
139015	[定州市]
139016	[涿州市]
139017	[安国市]
139018	[高碑店市]
139019	[鹿泉市]
139020	[丰南市]
140000	山西省
140100	太原市
140101	市辖区
140102	[南城区]
140103	[北城区]
140104	[河西区]
140105	小店区
140106	迎泽区
140107	杏花岭区
140108	尖草坪区
140109	万柏林区
140110	晋源区
140111	[古交工矿区]
140112	[南郊区]
140113	[北郊区]
140120	[市区]
140121	清徐县
140122	阳曲县
140123	娄烦县
140181	古交市
140200	大同市
140201	市辖区
140202	[城区]
140203	[矿区]
140211	[南郊区]
140212	新荣区
140213	平城区
140214	云冈区
140215	云州区
140221	阳高县
140222	天镇县
140223	广灵县
140224	灵丘县
140225	浑源县
140226	左云县
140227	[大同县]
140300	阳泉市
140301	市辖区
140302	城区
140303	矿区
140311	郊区
140321	平定县
140322	盂县
140400	长治市
140401	市辖区
140402	[城区]
140403	潞州区
140404	上党区
140405	屯留区
140406	潞城区
140411	[郊区]
140421	[长治县]
140422	[潞城县]
140423	襄垣县
140424	[屯留县]
140425	平顺县
140426	黎城县
140427	壶关县
140428	长子县
140429	武乡县
140430	沁县
140431	沁源县
140481	[潞城市]
140500	晋城市
140501	市辖区
140502	城区
140511	[郊区]
140521	沁水县
140522	阳城县
140523	[高平县]
140524	陵川县
140525	泽州县
140581	高平市
140600	朔州市
140601	市辖区
140602	朔城区
140603	平鲁区
140621	山阴县
140622	应县
140623	右玉县
140624	[怀仁县]
140681	怀仁市
140700	晋中市
140701	市辖区
140702	榆次区
140703	太谷区
140721	榆社县
140722	左权县
140723	和顺县
140724	昔阳县
140725	寿阳县
140726	[太谷县]
140727	祁县
140728	平遥县
140729	灵石县
140781	介休市
140800	运城市
140801	市辖区
140802	盐湖区
140821	临猗县
140822	万荣县
140823	闻喜县
140824	稷山县
140825	新绛县
140826	绛县
140827	垣曲县
140828	夏县
140829	平陆县
140830	芮城县
140881	永济市
140882	河津市
140900	忻州市
140901	市辖区
140902	忻府区
140921	定襄县
140922	五台县
140923	代县
140924	繁峙县
140925	宁武县
140926	静乐县
140927	神池县
140928	五寨县
140929	岢岚县
140930	河曲县
140931	保德县
140932	偏关县
140981	原平市
141000	临汾市
141001	市辖区
141002	尧都区
141021	曲沃县
141022	翼城县
141023	襄汾县
141024	洪洞县
141025	古县
141026	安泽县
141027	浮山县
141028	吉县
141029	乡宁县
141030	大宁县
141031	隰县
141032	永和县
141033	蒲县
141034	汾西县
141081	侯马市
141082	霍州市
141100	吕梁市
141101	市辖区
141102	离石区
141121	文水县
141122	交城县
141123	兴县
141124	临县
141125	柳林县
141126	石楼县
141127	岚县
141128	方山县
141129	中阳县
141130	交口县
141181	孝义市
141182	汾阳市
142100	[雁北地区]
142121	[阳高县]
142122	[天镇县]
142123	[广灵县]
142124	[灵丘县(灵邱县)]
142125	[浑源县]
142126	[应县]
142127	[山阴县]
142128	[朔县]
142129	[平鲁县]
142130	[左云县]
142131	[右玉县]
142132	[大同县]
142133	[怀仁县]
142200	[忻州地区]
142201	[忻州市]
142202	[原平市]
142221	[忻县]
142222	[定襄县]
142223	[五台县]
142224	[原平县]
142225	[代县]
142226	[繁峙县]
142227	[宁武县]
142228	[静乐县]
142229	[神池县]
142230	[五寨县]
142231	[岢岚县]
142232	[河曲县]
142233	[保德县]
142234	[偏关县]
142300	[吕梁地区]
142301	[孝义市]
142302	[离石市]
142303	[汾阳市]
142321	[汾阳县]
142322	[文水县]
142323	[交城县]
142324	[孝义县]
142325	[兴县]
142326	[临县]
142327	[柳林县]
142328	[石楼县]
142329	[岚县]
142330	[方山县]
142331	[离石县]
142332	[中阳县]
142333	[交口县]
142400	[晋中地区]
142401	[榆次市]
142402	[介休市]
142421	[榆社县]
142422	[左权县]
142423	[和顺县]
142424	[昔阳县]
142425	[平定县]
142426	[盂县]
142427	[寿阳县]
142428	[榆次县]
142429	[太谷县]
142430	[祁县]
142431	[平遥县]
142432	[介休县]
142433	[灵石县]
142500	[晋东南地区]
142501	[晋城市]
142521	[长治县]
142522	[潞城县]
142523	[屯留县]
142524	[长子县]
142525	[沁水县]
142526	[阳城县]
142527	[晋城县]
142528	[高平县]
142529	[陵川县]
142530	[壶关县]
142531	[平顺县]
142532	[黎城县]
142533	[武乡县]
142534	[襄垣县]
142535	[沁县]
142536	[沁源县]
142600	[临汾地区]
142601	[临汾市]
142602	[侯马市]
142603	[霍州市]
142621	[曲沃县]
142622	[翼城县]
142623	[襄汾县]
142624	[临汾县]
142625	[洪洞县]
142626	[霍县]
142627	[古县]
142628	[安泽县]
142629	[浮山县]
142630	[吉县]
142631	[乡宁县]
142632	[蒲县]
142633	[大宁县]
142634	[永和县]
142635	[隰县]
142636	[汾西县]
142700	[运城地区]
142701	[运城市]
142702	[永济市]
142703	[河津市]
142721	[运城县]
142722	[永济县]
142723	[芮城县]
142724	[临猗县]
142725	[万荣县]
142726	[新绛县]
142727	[稷山县]
142728	[河津县]
142729	[闻喜县]
142730	[夏县]
142731	[绛县]
142732	[平陆县]
142733	[垣曲县]
149000	[省直辖县级行政区划]
149001	[古交市]
149002	[高平市]
149003	[潞城市]
150000	内蒙古自治区
150100	呼和浩特市
150101	市辖区
150102	新城区
150103	回民区
150104	玉泉区
150105	赛罕区
150120	[市区]
150121	土默特左旗
150122	托克托县
150123	和林格尔县
150124	清水河县
150125	武川县
150200	包头市
150201	市辖区
150202	东河区
150203	昆都仑区
150204	青山区
150205	石拐区
150206	白云鄂博矿区
150207	九原区
150220	[市区]
150221	土默特右旗
150222	固阳县
150223	达尔罕茂明安联合旗
150300	乌海市
150301	市辖区
150302	海勃湾区
150303	海南区
150304	乌达区
150400	赤峰市
150401	市辖区
150402	红山区
150403	元宝山区
150404	松山区
150421	阿鲁科尔沁旗
150422	巴林左旗
150423	巴林右旗
150424	林西县
150425	克什克腾旗
150426	翁牛特旗
150427	[赤峰县]
150428	喀喇沁旗
150429	宁城县
150430	敖汉旗
150500	通辽市
150501	市辖区
150502	科尔沁区
150521	科尔沁左翼中旗
150522	科尔沁左翼后旗
150523	开鲁县
150524	库伦旗
150525	奈曼旗
150526	扎鲁特旗
150581	霍林郭勒市
150600	鄂尔多斯市
150601	市辖区
150602	东胜区
150603	康巴什区
150621	达拉特旗
150622	准格尔旗
150623	鄂托克前旗
150624	鄂托克旗
150625	杭锦旗
150626	乌审旗
150627	伊金霍洛旗
150700	呼伦贝尔市
150701	市辖区
150702	海拉尔区
150703	扎赉诺尔区
150721	阿荣旗
150722	莫力达瓦达斡尔族自治旗
150723	鄂伦春自治旗
150724	鄂温克族自治旗
150725	陈巴尔虎旗
150726	新巴尔虎左旗
150727	新巴尔虎右旗
150781	满洲里市
150782	牙克石市
150783	扎兰屯市
150784	额尔古纳市
150785	根河市
150800	巴彦淖尔市
150801	市辖区
150802	临河区
150821	五原县
150822	磴口县
150823	乌拉特前旗
150824	乌拉特中旗
150825	乌拉特后旗
150826	杭锦后旗
150900	乌兰察布市
150901	市辖区
150902	集宁区
150921	卓资县
150922	化德县
150923	商都县
150924	兴和县
150925	凉城县
150926	察哈尔右翼前旗
150927	察哈尔右翼中旗
150928	察哈尔右翼后旗
150929	四子王旗
150981	丰镇市
152100	[呼伦贝尔盟]
152101	[海拉尔市]
152102	[满洲里市]
152103	[扎兰屯市]
152104	[牙克石市]
152105	[根河市]
152106	[额尔古纳市]
152121	[布特哈旗]
152122	[阿荣旗]
152123	[莫力达瓦达斡尔族自治旗]
152124	[喜桂图旗]
152125	[额尔古纳右旗]
152126	[额尔古纳左旗]
152127	[鄂伦春自治旗]
152128	[鄂温克族自治旗]
152129	[新巴尔虎右旗]
152130	[新巴尔虎左旗]
152131	[陈巴尔虎旗]
152200	兴安盟
152201	乌兰浩特市
152202	阿尔山市
152221	科尔沁右翼前旗
152222	科尔沁右翼中旗
152223	扎赉特旗
152224	突泉县
152300	[哲里木盟]
152301	[通辽市]
152302	[霍林郭勒市]
152321	[通辽县]
152322	[科尔沁左翼中旗]
152323	[科尔沁左翼后旗]
152324	[开鲁县]
152325	[库伦旗]
152326	[奈曼旗]
152327	[扎鲁特旗]
152400	[昭乌达盟]
152401	[赤峰市]
152421	[阿鲁科尔沁旗]
152422	[巴林左旗]
152423	[巴林右旗]
152424	[林西县]
152425	[克什克腾旗]
152426	[翁牛特旗]
152427	[赤峰县]
152428	[喀喇沁旗]
152429	[宁城县]
152430	[敖汉旗]
152500	锡林郭勒盟
152501	二连浩特市
152502	锡林浩特市
152521	[阿巴哈纳尔旗]
152522	阿巴嘎旗
152523	苏尼特左旗
152524	苏尼特右旗
152525	东乌珠穆沁旗
152526	西乌珠穆沁旗
152527	太仆寺旗
152528	镶黄旗
152529	正镶白旗
152530	正蓝旗
152531	多伦县
152600	[乌兰察布盟]
152601	[集宁市]
152602	[丰镇市]
152621	[武川县]
152622	[和林格尔县]
152623	[清水河县]
152624	[卓资县]
152625	[化德县]
152626	[商都县]
152627	[兴和县]
152628	[丰镇县]
152629	[凉城县]
152630	[察哈尔右翼前旗]
152631	[察哈尔右翼中旗]
152632	[察哈尔右翼后旗]
152633	[达尔罕茂明安联合旗]
152634	[四子王旗]
152700	[伊克昭盟]
152701	[东胜市]
152721	[东胜县]
152722	[达拉特旗]
152723	[准格尔旗]
152724	[鄂托克前旗]
152725	[鄂托克旗]
152726	[杭锦旗]
152727	[乌审旗]
152728	[伊金霍洛旗]
152800	[巴彦淖尔盟]
152801	[临河市]
152821	[临河县]
152822	[五原县]
152823	[磴口县]
152824	[乌拉特前旗]
152825	[乌拉特中旗]
152826	[乌拉特后旗]
152827	[杭锦后旗]
152900	阿拉善盟
152921	阿拉善左旗
152922	阿拉善右旗
152923	额济纳旗
210000	辽宁省
210100	沈阳市
210101	市辖区
210102	和平区
210103	沈河区
210104	大东区
210105	皇姑区
210106	铁西区
210111	苏家屯区
210112	浑南区
210113	沈北新区
210114	于洪区
210115	辽中区
210120	[市区]
210121	[新民县]
210122	[辽中县]
210123	康平县
210124	法库县
210181	新民市
210200	大连市
210201	市辖区
210202	中山区
210203	西岗区
210204	沙河口区
210211	甘井子区
210212	旅顺口区
210213	金州区
210214	普兰店区
210219	[瓦房店市]
210220	[市区]
210221	[金县]
210222	[新金县]
210223	[复县]
210224	长海县
210225	[庄河县]
210281	瓦房店市
210282	[普兰店市]
210283	庄河市
210300	鞍山市
210301	市辖区
210302	铁东区
210303	铁西区
210304	立山区
210311	千山区
210319	[海城市]
210320	[市区]
210321	台安县
210322	[海城县]
210323	岫岩满族自治县
210381	海城市
210400	抚顺市
210401	市辖区
210402	新抚区
210403	东洲区
210404	望花区
210411	顺城区
210420	[市区]
210421	抚顺县
210422	新宾满族自治县
210423	清原满族自治县
210500	本溪市
210501	市辖区
210502	平山区
210503	溪湖区
210504	明山区
210505	南芬区
210511	[立新区]
210520	[市区]
210521	本溪满族自治县
210522	桓仁满族自治县
210600	丹东市
210601	市辖区
210602	元宝区
210603	振兴区
210604	振安区
210620	[市区]
210621	[凤城满族自治县]
210622	[岫岩满族自治县]
210623	[东沟县]
210624	宽甸满族自治县
210681	东港市
210682	凤城市
210700	锦州市
210701	市辖区
210702	古塔区
210703	凌河区
210704	[南票区]
210705	[葫芦岛区]
210711	太和区
210719	[锦西市]
210720	[市区]
210721	[锦西县]
210722	[兴城县]
210723	[绥中县]
210724	[锦县]
210725	[北镇满族自治县]
210726	黑山县
210727	义县
210781	凌海市
210782	北镇市
210800	营口市
210801	市辖区
210802	站前区
210803	西市区
210804	鲅鱼圈区
210811	老边区
210812	[鲅鱼圈区]
210820	[市区]
210821	[营口县]
210822	[盘山县]
210823	[大洼县]
210824	[盖县]
210881	盖州市
210882	大石桥市
210900	阜新市
210901	市辖区
210902	海州区
210903	新邱区
210904	太平区
210905	清河门区
210911	细河区
210920	[市区]
210921	阜新蒙古族自治县
210922	彰武县
211000	辽阳市
211001	市辖区
211002	白塔区
211003	文圣区
211004	宏伟区
211005	弓长岭区
211011	太子河区
211020	[市区]
211021	辽阳县
211022	[灯塔县]
211081	灯塔市
211100	盘锦市
211101	市辖区
211102	双台子区
211103	兴隆台区
211104	大洼区
211111	[郊区]
211121	[大洼县]
211122	盘山县
211200	铁岭市
211201	市辖区
211202	银州区
211203	[铁法区]
211204	清河区
211221	铁岭县
211222	[开原县]
211223	西丰县
211224	昌图县
211225	[康平县]
211226	[法库县]
211281	调兵山市
211282	开原市
211300	朝阳市
211301	市辖区
211302	双塔区
211303	龙城区
211319	[北票市]
211321	朝阳县
211322	建平县
211323	[凌源县]
211324	喀喇沁左翼蒙古族自治县
211325	[建昌县]
211326	[北票县]
211381	北票市
211382	凌源市
211400	葫芦岛市
211401	市辖区
211402	连山区
211403	龙港区
211404	南票区
211421	绥中县
211422	建昌县
211481	兴城市
212100	[铁岭地区]
212101	[铁岭市]
212102	[铁法市]
212121	[铁岭县]
212122	[开原县]
212123	[西丰县]
212124	[昌图县]
212125	[康平县]
212126	[法库县]
212200	[朝阳地区]
212201	[朝阳市]
212221	[朝阳县]
212222	[建平县]
212223	[凌源县]
212224	[喀喇沁左翼蒙古族自治县]
212225	[建昌县]
212226	[北票县]
219000	[省直辖县级行政区划]
219001	[瓦房店市]
219002	[海城市]
219003	[锦西市]
219004	[兴城市]
219005	[铁法市]
219006	[北票市]
219007	[开原市]
219008	[普兰店市]
219009	[凌源市]
219010	[庄河市]
219011	[大石桥市]
219012	[盖州市]
219013	[新民市]
219014	[东港市]
219015	[凌海市]
219016	[凤城市]
220000	吉林省
220100	长春市
220101	市辖区
220102	南关区
220103	宽城区
220104	朝阳区
220105	二道区
220106	绿园区
220111	[郊区]
220112	双阳区
220113	九台区
220120	[市区]
220121	[榆树市]
220122	农安县
220123	[九台县]
220124	[德惠县]
220125	[双阳县]
220181	[九台市]
220182	榆树市
220183	德惠市
220184	公主岭市
220200	吉林市
220201	市辖区
220202	昌邑区
220203	龙潭区
220204	船营区
220205	[丰满区]
220211	丰满区
220220	[市区]
220221	永吉县
220222	[舒兰县]
220223	[磐石县]
220224	[蛟河县]
220225	[桦甸县]
220281	蛟河市
220282	桦甸市
220283	舒兰市
220284	磐石市
220300	四平市
220301	市辖区
220302	铁西区
220303	铁东区
220319	[公主岭市]
220321	[怀德县]
220322	梨树县
220323	伊通满族自治县
220324	[双辽县]
220381	[公主岭市]
220382	双辽市
220400	辽源市
220401	市辖区
220402	龙山区
220403	西安区
220421	东丰县
220422	东辽县
220500	通化市
220501	市辖区
220502	东昌区
220503	二道江区
220519	[梅河口市]
220521	通化县
220522	[集安县]
220523	辉南县
220524	柳河县
220581	梅河口市
220582	集安市
220600	白山市
220601	市辖区
220602	浑江区
220603	[三岔子区]
220604	[临江区]
220605	江源区
220621	抚松县
220622	靖宇县
220623	长白朝鲜族自治县
220624	[临江县]
220625	[江源县]
220681	临江市
220700	松原市
220701	市辖区
220702	宁江区
220721	前郭尔罗斯蒙古族自治县
220722	长岭县
220723	乾安县
220724	[扶余县]
220781	扶余市
220800	白城市
220801	市辖区
220802	洮北区
220821	镇赉县
220822	通榆县
220881	洮南市
220882	大安市
222100	[四平地区]
222101	[四平市]
222102	[辽源市]
222121	[怀德县]
222122	[梨树县]
222123	[伊通县]
222124	[双辽县]
222125	[东丰县]
222200	[通化地区]
222201	[通化市]
222202	[浑江市]
222221	[海龙县]
222222	[通化县]
222223	[柳河县]
222224	[辉南县]
222225	[集安县]
222226	[抚松县]
222227	[靖宇县]
222228	[长白朝鲜族自治县]
222300	[白城地区]
222301	[白城市]
222302	[洮南市]
222303	[扶余市]
222304	[大安市]
222321	[扶余县]
222322	[洮安县]
222323	[长岭县]
222324	[前郭尔罗斯蒙古族自治县]
222325	[大安县]
222326	[镇赉县]
222327	[通榆县]
222328	[乾安县]
222400	延边朝鲜族自治州
222401	延吉市
222402	图们市
222403	敦化市
222404	珲春市
222405	龙井市
222406	和龙市
222421	[龙井县]
222422	[敦化县]
222423	[和龙县]
222424	汪清县
222425	[珲春县]
222426	安图县
229000	[省直辖县级行政区划]
229001	[公主岭市]
229002	[梅河口市]
229003	[集安市]
229004	[桦甸市]
229005	[九台市]
229006	[蛟河市]
229007	[榆树市]
229008	[舒兰市]
229009	[大安市]
2
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,以下是一个自定义注解校验身份证代码示例: 首先,我们需要定义一个注解 `@IdNumber`,用于标注需要进行身份证校验的字段: ```java @Documented @Constraint(validatedBy = IdNumberValidator.class) @Target({ElementType.FIELD, ElementType.PARAMETER}) @Retention(RetentionPolicy.RUNTIME) public @interface IdNumber { String message() default "身份证号码不正确"; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {}; } ``` 其中,`@Constraint(validatedBy = IdNumberValidator.class)` 表示该注解需要使用 `IdNumberValidator` 进行校验。 接着,我们需要实现 `IdNumberValidator`: ```java public class IdNumberValidator implements ConstraintValidator<IdNumber, String> { @Override public void initialize(IdNumber constraintAnnotation) { } @Override public boolean isValid(String value, ConstraintValidatorContext context) { if (StringUtils.isBlank(value)) { return true; } return isIdNumber(value); } /** * 身份证校验 * * @param idNumber 身份证号码 * @return 是否有效 */ private boolean isIdNumber(String idNumber) { String regex = "^\\d{15}$|^\\d{17}[0-9Xx]$"; if (!idNumber.matches(regex)) { return false; } String provinceCode = idNumber.substring(0, 2); if (!ProvinceCodeUtils.isValidProvinceCode(provinceCode)) { return false; } if (!isValidBirthDate(idNumber)) { return false; } return isValidCheckCode(idNumber); } /** * 校验期 * * @param idNumber 身份证号码 * @return 是否有效 */ private boolean isValidBirthDate(String idNumber) { String birthDateStr; if (idNumber.length() == 15) { birthDateStr = "19" + idNumber.substring(6, 12); } else { birthDateStr = idNumber.substring(6, 14); } SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); format.setLenient(false); try { format.parse(birthDateStr); } catch (ParseException e) { return false; } return true; } /** * 校验校验码 * * @param idNumber 身份证号码 * @return 是否有效 */ private boolean isValidCheckCode(String idNumber) { if (idNumber.length() == 15) { return true; } char[] idCharArray = idNumber.toCharArray(); int[] idIntArray = new int[17]; for (int i = 0; i < 17; i++) { idIntArray[i] = Integer.parseInt(String.valueOf(idCharArray[i])); } int[] weightFactorArray = new int[]{7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; int sum = 0; for (int i = 0; i < 17; i++) { sum += idIntArray[i] * weightFactorArray[i]; } int checkCodeIndex = sum % 11; char[] checkCodeArray = {'1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'}; char checkCode = checkCodeArray[checkCodeIndex]; return checkCode == idCharArray[17]; } } ``` 其中,`isValid` 方法用于进行身份证校验,`isValidBirthDate` 方法用于校验期,`isValidCheckCode` 方法用于校验校验码。 最后,在需要进行身份证校验的字段上使用 `@IdNumber` 注解即可: ```java public class User { @IdNumber private String idNumber; // getter/setter 略 } ``` 这样,在使用 `@Valid` 注解校验实体时,如果 `idNumber` 字段不符合身份证规则,则会抛出 `ConstraintViolationException` 异常。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值