身份证号码正则截取生日golang和java实现

身份证号码正则截取生日golang和java实现

身份证分为一代身份证和二代身份证,一代身份证为15位、二代身份证为18位。

举例一代身份证:130503670401001

二代身份证:41140219891216321

 

一代身份证正则截取:^(\d{6})(\d{6})(.*)$

二代身份证正则截取: ^(\d{6})(\d{8})(.*)$

 

 

下面分别设java和golang的截取实现

 

package spring;import java.util.regex.Matcher;
import java.util.regex.Pattern;/*** Created by banxia on 16/6/20.*/
public class Test {public static  void  main(String[] args){//  String str = "411402198912166321";String str = "130503670401001";// ^(\d{6})(\d{8})(.*)      18位//^(\d{6})(\d{6})(.*)       15位Pattern pattern = Pattern.compile("^(\\d{6})(\\d{6})(.*)");Matcher matcher = pattern.matcher(str);if (matcher.find()) {String group = matcher.group(2);System.out.print(group);}}
}

 

package mainimport ()
import ("regexp""fmt"
)func main() {var str string = "411402198912166321"reg,err :=  regexp.Compile("^(\\d{6})(\\d{8})(.*)")if err != nil {return}if reg.MatchString(str) == true {submatch := reg.FindStringSubmatch(str)fmt.Println(submatch)fmt.Println("date is ",submatch[2])}}

 

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部