Files
exchange_go/pkg/utility/biginthelper/bighelper.go
2025-02-06 11:14:33 +08:00

36 lines
751 B
Go

package biginthelper
import (
"math/big"
"regexp"
"strconv"
)
// ParseBigInt 将字符串转换为 big.Int
func ParseBigInt(value string) *big.Int {
bi := new(big.Int)
i, ok := bi.SetString(value, 10)
if !ok {
return bi
}
return i
}
// IntToHex convert int to hexadecimal representation
// int64转换为16进制字符串
func IntToHex(i int64) string {
return strconv.FormatInt(i, 16)
}
// BigToHex 将bigint转化为16进制带 0x 的字符串
func BigToHex(bigInt big.Int) string {
return "0x" + IntToHex(bigInt.Int64())
}
// CheckIsAddress Check is a eth Address
// 检查是否是以太坊地址 正则匹配
func CheckIsAddress(addr string) bool {
re := regexp.MustCompile("^0x[0-9a-fA-F]{40}$")
return re.MatchString(addr)
}