go生成随机手机号
时间: 2023-07-25 21:11:47 浏览: 72
可以使用第三方的faker库来生成随机手机号。具体实现代码如下:
```go
package main
import (
"fmt"
"github.com/brianvoe/gofakeit/v6"
)
func main() {
gofakeit.Seed(0) // 设置随机数种子,可选
phoneNumber := gofakeit.Phone() // 生成随机手机号
fmt.Println(phoneNumber)
}
```
上述代码中使用了gofakeit库来生成随机手机号,需要先使用`gofakeit.Seed(seed int64)`方法设置随机数种子(可选)。然后使用`gofakeit.Phone()`方法生成随机手机号。
相关问题
golang生成随机字符串
在 Golang 中,可以使用以下代码生成随机字符串:
```go
package main
import (
"math/rand"
"time"
)
const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
func generateRandomString(length int) string {
rand.Seed(time.Now().UnixNano())
b := make([]byte, length)
for i := range b {
b[i] = charset[rand.Intn(len(charset))]
}
return string(b)
}
func main() {
randomString := generateRandomString(10)
println(randomString)
}
```
在上面的代码中,`generateRandomString` 函数使用 `rand.Intn` 函数从字符集 `charset` 中随机选择字符,然后将字符拼接成字符串并返回。`rand.Seed(time.Now().UnixNano())` 用于设置随机数种子,确保每次运行程序时生成的随机字符串都不同。
运行上述代码会生成一个长度为 10 的随机字符串并打印出来。你可以根据需要修改 `length` 参数来生成不同长度的随机字符串。
go 实现校验手机号格式方法
在 Go 中,可以使用正则表达式来校验手机号的格式是否正确。
例如,你可以使用如下的正则表达式来校验手机号码是否是 13、14、15、16、17、18、19 开头的 11 位数字:
```
^(13|14|15|16|17|18|19)\d{9}$
```
你可以使用如下的代码来使用正则表达式校验手机号的格式是否正确:
```
import "regexp"
func checkPhoneNumber(phoneNumber string) bool {
// 定义手机号格式的正则表达式
pattern := "^(13|14|15|16|17|18|19)\\d{9}$"
// 编译正则表达式
reg, err := regexp.Compile(pattern)
if err != nil {
return false
}
// 校验手机号是否符合格式
return reg.MatchString(phoneNumber)
}
```
然后你就可以通过调用 `checkPhoneNumber` 函数来校验手机号的格式是否正确,例如:
```
isValid := checkPhoneNumber("13800138000")
if isValid {
fmt.Println("手机号格式正确")
} else {
fmt.Println("手机号格式错误")
}
```