身份证号码正则截取生日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 main import ( ) 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]) } }
相关推荐
这份压缩包文件“算法与数据结构笔记+leetcode刷题笔记+大厂面试算法题(golang和java实现).zip”包含了一系列关于算法、数据结构、LeetCode刷题以及Go和Java语言在解决面试问题中的应用。以下是这些主题的详细讨论...
总之,`jsonrpc4j`为Java提供了实现JSON-RPC服务器和客户端的能力,使得Golang可以通过JSON-RPC与Java进行跨语言通信。通过理解和熟练运用这些技术,你可以构建起高效的分布式系统,充分利用不同语言的优势。
在Go语言(Golang)中,正则表达式是通过`regexp`包来实现的,它提供了丰富的功能,使得开发者能够方便地处理字符串中的模式匹配问题。本篇文章将深入探讨Go语言中的正则表达式,帮助你更好地理解和使用这个强大的...
国密加密解密 sm4 sm2 的java python golang实现,java和python,golang的有一定区别,需要修改点东西才可以实现。 SM4Key = ran_str = ''.join(random.sample(string.ascii_letters + string.digits, 16)) ...
总结来说,`Go-IdValidator`是Go语言环境下用于验证中国大陆身份证号码的库,它包含了身份证的合法性检查、校验码计算、出生日期解析和性别判断等功能。在处理涉及中国用户身份验证的项目中,`IdValidator`是一个...
Java 和 Golang 都是现代编程语言,各自拥有独特的优点。在特定场景下,开发者可能需要将两者结合,实现 Java 程序调用 Golang 编写的代码。本篇文章将详细探讨如何通过 Go 1.5 及以上版本的共享库实现 Java 调用 ...
本压缩包文件“leetcode算法学习笔记,Python,Golang,Java.zip”包含了针对这三种主流编程语言的解题心得和实战技巧,对于程序员尤其是准备面试或提高算法水平的开发者来说,是一份极有价值的学习资源。...
【Golang】leetcode-golang,LeetCode solutions with Golang(Golang 实现) (Leetcode golang, LeetCode solutions with Golang (Golang implementation)) 【Golang】leetcode-golang,LeetCode solutions with Golang...
标题中的“java_celluar.zip_golang_golang 界面_java_celluar”暗示了这是一个与Java和Golang相关的项目,特别是涉及到Golang的图形用户界面(GUI)开发,并且可能是在实现一个基于Java细胞自动机(Cellular ...
本主题聚焦于四种常用编程语言——Java、PHP、GOLang(Go语言)和JavaScript——之间的AES(Advanced Encryption Standard)ECB(Electronic Codebook)模式128位加密解密的互操作性。下面我们将详细探讨这些语言...
Go语言的正则表达式还有捕获组(用括号表示)和反向引用的特性,允许在正则表达式中引用前面的捕获组。这在提取或替换特定模式的字符串时非常有用。 需要注意的是,在使用正则表达式时要小心一些常见的陷阱,比如...
在本文中,我们将深入探讨如何利用Golang实现这个功能,并了解相关的核心知识点。 首先,我们需要了解的是Golang的图形用户界面(GUI)库。虽然Golang的标准库并没有内置GUI支持,但社区提供了多个第三方库,如`go-...
正则表达式 将带有参数的MQTT主题转换为正则表达式。 除非需要正则表达式支持,否则应使用更快的 例子 var mqtt_regex = require ( "mqtt-regex" ) ; var pattern = "chat/+id/+user/#path" ; var room_message_...
"正则表达式工具 for mac" 是一款专为Mac用户设计的高效软件,它允许用户在多种语言环境中如PHP、JavaScript、Python、Golang、Java、Ruby、Perl以及C#中编写和测试正则表达式。 这款工具的特色在于其多语言支持,...
本篇将深入探讨如何利用Golang实现一个高性能的IM单聊系统,特别关注UDP(用户数据报协议)在其中的作用和分发策略。 首先,我们需要理解Golang中的并发模型。Golang引入了goroutine和channel的概念,它们是实现高...
实现了找到DIV和href。通过HTML层级的方式匹配正则。 例如: [\s\S]+?href="(\/p\/[\s\S]+?)" 这种匹配方式。可以爬取任意类的网站。 使用方式,命令行输入:go run 10Golang方式实现贴吧爬虫demo.go
`ratelimit`库是一个实现了令牌桶算法和漏桶算法的Golang库,帮助开发者在应用中有效地实施流量控制。下面将详细探讨这两个算法及其在Golang中的实现。 ### 令牌桶算法 令牌桶算法是一种允许突发流量的流量整形和...
Golang原生支持WebSocket,并且通过其标准库net/http中的http.ServeMux可以轻松实现WebSocket服务器和客户端。 Golang提供了构建WebSocket服务器和客户端的强大工具。通过本篇文章,你应该能够理解WebSocket的基本...
go-stream在golang中提供Java Stream API类似于流操作 用法 package main import ( "github.com/aagu/go-stream" ) func main () { ints := [] int { 1 , 2 , 3 , 4 , 5 , 6 , 7 } stream . New ( ints ). Filter...