blue_dvd 发表于 2012-12-25 17:39:21

如何正则身份证号码,提取出来后,显示为**年**月**日?【已解决】

本帖最后由 blue_dvd 于 2012-12-25 20:33 编辑

如何正则身份证号码,提取出来后,显示为**年**月**日?
$ShenFZ=152104199402261219
$ShenRi=
MsgBox(0,"",$ShenRi)
多谢了!

annybaby 发表于 2012-12-25 17:52:17

回复 1# blue_dvd

正则个Q啊,直接根据身份证的构成用字符串提取函数即可~~

小影 发表于 2012-12-25 17:57:27

$ShenFZ='152104199402261219'
$ShenRi=StringRegExpReplace($ShenFZ,'\d{6}(\d{4})(\d{2})(\d{2})\d+','$1年$2 月$3日')
MsgBox(0,"",$ShenRi)

chen2j 发表于 2012-12-25 19:11:55

要是没有其他字符串的话直接取位数不就行了吗

xms77 发表于 2012-12-25 19:14:48

$ShenFZ='152104199402261219'
MsgBox(0,"",StringMid($ShenFZ,7,4) & '年' & StringMid($ShenFZ,11,2) & '月' & StringMid($ShenFZ,13,2) & '日')回复 1# blue_dvd

blue_dvd 发表于 2012-12-25 20:23:04

本帖最后由 blue_dvd 于 2012-12-25 20:30 编辑

上面两位都是将其变成字符串来操作的?如何将数字转成字符串?
知道了!用String

blue_dvd 发表于 2012-12-25 20:32:18

感谢3楼的小影和5楼的xms77 !

lpxx 发表于 2012-12-25 21:48:31

不会正则可以用StringMid截取
$ShenFZ='152104199402261219'
$ShenRi=StringMid($ShenFZ, 7, 4) & '年' & StringMid($ShenFZ, 11, 2) & '月' & StringMid($ShenFZ, 11, 2) & '日'
MsgBox(0,"",$ShenRi)

一辈子为你 发表于 2013-4-25 23:47:28

这个思路非常好

逆水风帆 发表于 2014-11-21 21:41:38

豁然开朗哈,多谢各位高手指导
页: [1]
查看完整版本: 如何正则身份证号码,提取出来后,显示为**年**月**日?【已解决】