diff --git a/README.md b/README.md
index b738876..550484c 100644
--- a/README.md
+++ b/README.md
@@ -388,32 +388,50 @@ import "github.com/duke-git/lancet/v2/cryptor"
- **HmacMd5** : return the md5 hmac hash of string.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacMd5)]
[[play](https://go.dev/play/p/uef0q1fz53I)]
+- **HmacMd5WithBase64** : return the md5 hmac hash of base64 string.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacMd5WithBase64)]
- **HmacSha1** : return the hmac hash of string use sha1.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha1)]
[[play](https://go.dev/play/p/1UI4oQ4WXKM)]
+- **HmacSha1WithBase64** : return the hmac hash of string use sha1 with base64.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha1WithBase64)]
- **HmacSha256** : return the hmac hash of string use sha256.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha256)]
[[play](https://go.dev/play/p/HhpwXxFhhC0)]
+- **HmacSha256WithBase64** : return the hmac hash of string use sha256 with base64.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha256WithBase64)]
- **HmacSha512** : return the hmac hash of string use sha512.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha512)]
[[play](https://go.dev/play/p/59Od6m4A0Ud)]
+- **HmacSha512WithBase64** : return the hmac hash of string use sha512 with base64.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#HmacSha512WithBase64)]
- **Md5Byte** : return the md5 string of byte slice.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Md5Byte)]
[[play](https://go.dev/play/p/suraalH8lyC)]
+- **Md5ByteWithBase64** : return the md5 string of byte slice with base64.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Md5ByteWithBase64)]
- **Md5String** : return the md5 value of string.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Md5String)]
[[play](https://go.dev/play/p/1bLcVetbTOI)]
+- **Md5StringWithBase64** : return the md5 value of string with base64.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Md5StringWithBase64)]
- **Md5File** : return the md5 value of file.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Md5File)]
-- **Sha1** : return the sha1 value (SHA-1 hash algorithm) of string.
+- **Sha1** : return the sha1 value (SHA-1 hash algorithm) of base64 string.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha1)]
[[play](https://go.dev/play/p/_m_uoD1deMT)]
+- **Sha1WithBase64** : return the sha1 value (SHA-1 hash algorithm) of string.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha1WithBase64)]
- **Sha256** : return the sha256 value (SHA-256 hash algorithm) of string.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha256)]
[[play](https://go.dev/play/p/tU9tfBMIAr1)]
+- **Sha256WithBase64** : return the sha256 value (SHA256 hash algorithm) of base64 string.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha256WithBase64)]
- **Sha512** : return the sha512 value (SHA-512 hash algorithm) of string.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha512)]
[[play](https://go.dev/play/p/3WsvLYZxsHa)]
+- **Sha512WithBase64** : return the sha512 value (SHA-512 hash algorithm) of base64 string.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#Sha512WithBase64)]
- **GenerateRsaKey** : create rsa private and public pemo file.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor.md#GenerateRsaKey)]
[[play](https://go.dev/play/p/zutRHrDqs0X)]
@@ -543,6 +561,16 @@ import "github.com/duke-git/lancet/v2/datetime"
- **IsWeekend** : checks if passed time is weekend or not.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#IsWeekend)]
[[play](https://go.dev/play/p/cupRM5aZOIY)]
+- **NowDateOrTime** : returns current datetime with specific format and timezone.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#NowDateOrTime)]
+- **Timestamp** : returns current second timestamp.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#Timestamp)]
+- **TimestampMilli** : returns current mill second timestamp.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#TimestampMilli)]
+- **TimestampMicro** : returns current micro second timestamp.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#TimestampMicro)]
+- **TimestampNano** : returns current nano second timestamp.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime.md#TimestampNano)]
8. Datastructure package constains some common data structure. eg. list, linklist, stack, queue, set, tree, graph. index
@@ -796,6 +824,24 @@ import "github.com/duke-git/lancet/v2/maputil"
- **IsDisjoint** : check two map are disjoint if they have no keys in common.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#IsDisjoint)]
[[play](https://go.dev/play/p/N9qgYg_Ho6f)]
+- **HasKey** : checks if map has key or not.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#HasKey)]
+- **NewConcurrentMap** : creates a ConcurrentMap with specific shard count.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#NewConcurrentMap)]
+- **ConcurrentMap_Set** : set the value for a key.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_Set)]
+- **ConcurrentMap_Get** : get the value stored in the map for a key, or nil if no.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_Get)]
+- **ConcurrentMap_GetOrSet** : returns the existing value for the key if present.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_GetOrSet)]
+- **ConcurrentMap_Delete** : delete the value for a key.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_Delete)]
+- **ConcurrentMap_GetAndDelete** :returns the existing value for the key if present and then delete the value for the key.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_GetAndDelete)]
+- **ConcurrentMap_Has** : checks if map has the value for a key.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_Has)]
+- **ConcurrentMap_Range** : calls iterator sequentially for each key and value present in each of the shards in the map.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil.md#ConcurrentMap_Range)]
13. Mathutil package implements some functions for math calculation. index
@@ -1247,6 +1293,8 @@ import "github.com/duke-git/lancet/v2/slice"
- **KeyBy** : converts a slice to a map based on a callback function.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/slice.md#KeyBy)]
[[play](https://go.dev/play/p/uXod2LWD1Kg)]
+- **Join** : join the slice item with specify separator.
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/slice.md#Join)]
19. Stream package implements a sequence of elements supporting sequential and operations. this package is an experiment to explore if stream in go can work as the way java does. its function is very limited. index
diff --git a/README_zh-CN.md b/README_zh-CN.md
index ff3e6fc..f9c6cac 100644
--- a/README_zh-CN.md
+++ b/README_zh-CN.md
@@ -387,32 +387,50 @@ import "github.com/duke-git/lancet/v2/cryptor"
- **HmacMd5** : 返回字符串 md5 hmac 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacMd5)]
[[play](https://go.dev/play/p/uef0q1fz53I)]
+- **HmacMd5WithBase64** : 获取字符串 md5 hmac base64 字符串值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacMd5WithBase64)]
- **HmacSha1** : 返回字符串 sha1 hmac 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha1)]
[[play](https://go.dev/play/p/1UI4oQ4WXKM)]
+- **HmacSha1WithBase64** : 获取字符串的 sha1 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha1WithBase64)]
- **HmacSha256** : 返回字符串 sha256 hmac 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha256)]
[[play](https://go.dev/play/p/HhpwXxFhhC0)]
+- **HmacSha256WithBase64** : 获取字符串 sha256 hmac base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha256WithBase64)]
- **HmacSha512** : 返回字符串 sha256 hmac 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha512)]
[[play](https://go.dev/play/p/59Od6m4A0Ud)]
-- **Md5Byte** : 返回byte slice的md5值.
+- **HmacSha512WithBase64** : 获取字符串 sha512 hmac base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#HmacSha512WithBase64)]
+- **Md5Byte** : 返回 byte slice 的 md5 值.
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Md5Byte)]
[[play](https://go.dev/play/p/suraalH8lyC)]
+- **Md5ByteWithBase64** : 获取 byte slice 的 md5 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Md5ByteWithBase64)]
- **Md5String** : 返回字符串 md5 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Md5String)]
[[play](https://go.dev/play/p/1bLcVetbTOI)]
+- **Md5StringWithBase64** : 获取字符串 md5 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Md5StringWithBase64)]
- **Md5File** : 返回文件 md5 值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Md5File)]
- **Sha1** : 返回字符串 sha1 哈希值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha1)]
[[play](https://go.dev/play/p/_m_uoD1deMT)]
+- **Sha1WithBase64** : 获取字符串 sha1 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha1WithBase64)]
- **Sha256** :返回字符串 sha256 哈希值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha256)]
[[play](https://go.dev/play/p/tU9tfBMIAr1)]
+- **Sha256WithBase64** : 获取字符串 sha256 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha256WithBase64)]
- **Sha512** : 返回字符串 sha512 哈希值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha512)]
[[play](https://go.dev/play/p/3WsvLYZxsHa)]
+- **Sha512WithBase64** : 获取字符串 sha512 base64 值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#Sha512WithBase64)]
- **GenerateRsaKey** : 在当前目录下创建 rsa 私钥文件和公钥文件。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/cryptor_zh-CN.md#GenerateRsaKey)]
[[play](https://go.dev/play/p/zutRHrDqs0X)]
@@ -545,6 +563,16 @@ import "github.com/duke-git/lancet/v2/datetime"
- **IsWeekend** : 判断日期是否是周末。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#IsWeekend)]
[[play](https://go.dev/play/p/cupRM5aZOIY)]
+- **NowDateOrTime** : 根据指定的格式和时区返回当前时间字符串。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#NowDateOrTime)]
+- **Timestamp** : 返回当前秒级时间戳。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#Timestamp)]
+- **TimestampMilli** : 返回当前毫秒级时间戳。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#TimestampMilli)]
+- **TimestampMicro** : 返回当前微秒级时间戳。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#TimestampMicro)]
+- **TimestampNano** : 返回当前纳秒级时间戳。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/datetime_zh-CN.md#TimestampNano)]
8. datastructure 包含一些普通的数据结构实现。例如:list, linklist, stack, queue, set, tree, graph。 回到目录
@@ -778,26 +806,44 @@ import "github.com/duke-git/lancet/v2/maputil"
[[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#Values)]
[[play](https://go.dev/play/p/CBKdUc5FTW6)]
- **ValuesBy** : 创建一个切片,其元素是每个 map 的 value 调用 mapper 函数的结果。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#ValuesBy)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ValuesBy)]
[[play](https://go.dev/play/p/sg9-oRidh8f)]
- **MapKeys** : 操作 map 的每个 key,然后转为新的 map。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#MapKeys)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#MapKeys)]
[[play](https://go.dev/play/p/8scDxWeBDKd)]
- **MapValues** : 操作 map 的每个 value,然后转为新的 map。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#MapValues)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#MapValues)]
[[play](https://go.dev/play/p/g92aY3fc7Iw)]
- **Entries** : 将 map 转换为键/值对切片。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#Entries)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#Entries)]
[[play](https://go.dev/play/p/Ltb11LNcElY)]
- **FromEntries** : 基于键/值对的切片创建 map。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#FromEntries)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#FromEntries)]
[[play](https://go.dev/play/p/fTdu4sCNjQO)]
- **Transform** : 将 map 转换为其他类型的 map。
- [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN#Transform)]
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#Transform)]
[[play](https://go.dev/play/p/P6ovfToM3zj)]
- **IsDisjoint** : 验证两个 map 是否具有不同的 key。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#IsDisjoint)]
[[play](https://go.dev/play/p/N9qgYg_Ho6f)]
+- **HasKey** : 检查map是否包含某个key。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#HasKey)]
+- **NewConcurrentMap** : ConcurrentMap协程安全的map结构。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#NewConcurrentMap)]
+- **ConcurrentMap_Set** : 在map中设置key和value。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_Set)]
+- **ConcurrentMap_Get** : 根据key获取value, 如果不存在key,返回零值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_Get)]
+- **ConcurrentMap_GetOrSet** : 返回键的现有值(如果存在),否则,设置key并返回给定值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_GetOrSet)]
+- **ConcurrentMap_Delete** : 删除key。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_Delete)]
+- **ConcurrentMap_GetAndDelete** :获取key,然后删除。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_GetAndDelete)]
+- **ConcurrentMap_Has** : 验证是否包含key。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_Has)]
+- **ConcurrentMap_Range** : 为map中每个键和值顺序调用迭代器。 如果iterator返回false,则停止迭代。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/maputil_zh-CN.md#ConcurrentMap_Range)]
13. mathutil 包实现了一些数学计算的函数。 回到目录
@@ -969,7 +1015,13 @@ import "github.com/duke-git/lancet/v2/pointer"
[[play](https://go.dev/play/p/HFd70x4DrMj)]
- **Unwrap** : 返回传入指针指向的值。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#Unwrap)]
- [[play](https://go.dev/play/p/cgeu3g7cjWb)]
+ [[play](https://go.dev/play/p/cgeu3g7cjWb)
+- **UnwarpOr** : 返回指针的值,如果指针为零值,则返回 fallback。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#UnwrapOr)]
+ [[play](https://go.dev/play/p/mmNaLC38W8C)]
+- **UnwarpOrDefault** : 返回指针的值,如果指针为零值,则返回相应零值。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/pointer_zh-CN.md#UnwrapOrDefault)]
+ [[play](https://go.dev/play/p/ZnGIHf8_o4E)]
16. random 随机数生成器包,可以生成随机[]bytes, int, string。 回到目录
@@ -1243,6 +1295,8 @@ import "github.com/duke-git/lancet/v2/slice"
- **KeyBy** :将切片每个元素调用函数后转为 map。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/slice_zh-CN.md#KeyBy)]
[[play](https://go.dev/play/p/uXod2LWD1Kg)]
+- **Join** : 用指定的分隔符链接切片元素。
+ [[doc](https://github.com/duke-git/lancet/blob/main/docs/slice_zh-CN.md#Join)]
19. stream 流,该包仅验证简单的 stream 实现,功能有限。 回到目录
@@ -1538,7 +1592,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip2** : 创建一个 Tuple2 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip2)]
[[play](https://go.dev/play/p/4ncWJJ77Xio)]
-- **Unzip2** : 根据传入的Tuple2切片,创建一组和Tuple2元素相对应的切片。
+- **Unzip2** : 根据传入的 Tuple2 切片,创建一组和 Tuple2 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip2)]
[[play](https://go.dev/play/p/KBecr60feXb)]
- **Tuple3** : 3 元元组
@@ -1550,7 +1604,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip3** : 创建一个 Tuple3 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip3)]
[[play](https://go.dev/play/p/97NgmsTILfu)]
-- **Unzip3** : 根据传入的Tuple3切片,创建一组和Tuple3元素相对应的切片。
+- **Unzip3** : 根据传入的 Tuple3 切片,创建一组和 Tuple3 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip3)]
[[play](https://go.dev/play/p/bba4cpAa7KO)]
- **Tuple4** : 4 元元组
@@ -1562,7 +1616,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip4** : 创建一个 Tuple4 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip4)]
[[play](https://go.dev/play/p/PEmTYVK5hL4)]
-- **Unzip4** : 根据传入的Tuple4切片,创建一组和Tuple4元素相对应的切片。
+- **Unzip4** : 根据传入的 Tuple4 切片,创建一组和 Tuple4 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip4)]
[[play](https://go.dev/play/p/rb8z4gyYSRN)]
- **Tuple5** : 5 元元组
@@ -1574,7 +1628,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip5** : 创建一个 Tuple5 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip5)]
[[play](https://go.dev/play/p/fCAAJLMfBIP)]
-- **Unzip5** : 根据传入的Tuple5切片,创建一组和Tuple5元素相对应的切片。
+- **Unzip5** : 根据传入的 Tuple5 切片,创建一组和 Tuple5 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip5)]
[[play](https://go.dev/play/p/gyl6vKfhqPb)]
- **Tuple6** : 6 元元组
@@ -1586,7 +1640,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip6** : 创建一个 Tuple6 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip6)]
[[play](https://go.dev/play/p/oWPrnUYuFHo)]
-- **Unzip6** : 根据传入的Tuple6切片,创建一组和Tuple6元素相对应的切片。
+- **Unzip6** : 根据传入的 Tuple6 切片,创建一组和 Tuple6 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip6)]
[[play](https://go.dev/play/p/l41XFqCyh5E)]
- **Tuple7** : 7 元元组
@@ -1598,7 +1652,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip7** : 创建一个 Tuple7 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip7)]
[[play](https://go.dev/play/p/WUJuo897Egf)]
-- **Unzip7** : 根据传入的Tuple7切片,创建一组和Tuple7元素相对应的切片。
+- **Unzip7** : 根据传入的 Tuple7 切片,创建一组和 Tuple7 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip7)]
[[play](https://go.dev/play/p/hws_P1Fr2j3)]
- **Tuple8** : 8 元元组
@@ -1610,7 +1664,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip8** : 创建一个 Tuple8 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip8)]
[[play](https://go.dev/play/p/8V9jWkuJfaQ)]
-- **Unzip8** : 根据传入的Tuple8切片,创建一组和Tuple8元素相对应的切片。
+- **Unzip8** : 根据传入的 Tuple8 切片,创建一组和 Tuple8 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip8)]
[[play](https://go.dev/play/p/1SndOwGsZB4)]
- **Tuple9** : 9 元元组
@@ -1622,7 +1676,7 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip9** : 创建一个 Tuple9 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip9)]
[[play](https://go.dev/play/p/cgsL15QYnfz)]
-- **Unzip9** : 根据传入的Tuple9切片,创建一组和Tuple9元素相对应的切片。
+- **Unzip9** : 根据传入的 Tuple9 切片,创建一组和 Tuple9 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip9)]
[[play](https://go.dev/play/p/91-BU_KURSA)]
- **Tuple10** : 10 元元组
@@ -1634,11 +1688,10 @@ import "github.com/duke-git/lancet/v2/tuple"
- **Zip10** : 创建一个 Tuple10 元组切片, 其中元组的元素和传入切片元素相对应。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Zip10)]
[[play](https://go.dev/play/p/YSR-2cXnrY4)]
-- **Unzip10** : 根据传入的Tuple10切片,创建一组和Tuple10元素相对应的切片。
+- **Unzip10** : 根据传入的 Tuple10 切片,创建一组和 Tuple10 元素相对应的切片。
[[doc](https://github.com/duke-git/lancet/blob/main/docs/tuple_zh-CN.md#Unzip10)]
[[play](https://go.dev/play/p/-taQB6Wfre_z)]
-
24. validator 验证器包,包含常用字符串格式验证函数。 回到目录
```go