Home > Backend Development > Golang > Use regular expressions in golang to verify whether a string is a number

Use regular expressions in golang to verify whether a string is a number

PHPz
Release: 2023-06-24 09:11:16
Original
1895 people have browsed it

In golang, regular expressions can be used to easily verify whether a string is a number. Let's introduce how to use regular expressions for numerical verification in golang.

First, we need to import the related package of regular expressions, that is, the regexp package. In golang, the regexp package provides a function MatchString, which can be used to verify whether a string conforms to the rules of a certain regular expression.

Next, we need to write a regular expression for numerical verification. In golang, numbers can be integers or floating point numbers, so we need to write two regular expressions to verify integers and floating point numbers respectively.

Regular expression to verify integers:

^[0-9]+$
Copy after login

The meaning of this regular expression is that it starts with the number 0-9, contains one or more numbers 0-9 in the middle, and ends with the number 0 -9 ending. This regular expression can verify whether a string is an integer.

Regular expression to verify floating point numbers:

^[0-9]+(.[0-9]+)?$
Copy after login

The meaning of this regular expression is that it starts with the number 0-9, contains 1 or more numbers 0-9 in the middle, and then may A decimal point "." appears, followed by one or more digits 0-9, and finally ends with the digits 0-9. This regular expression can verify whether a string is a floating point number.

Now, let’s take a look at how to use these two regular expressions for number verification in golang:

package main

import (
    "fmt"
    "regexp"
)

func isNumber(str string) bool {
    // 整数的正则表达式
    integerPattern := "^[0-9]+$"

    // 浮点数的正则表达式
    floatPattern := "^[0-9]+(\.[0-9]+)?$"

    match, _ := regexp.MatchString(integerPattern, str)
    if match {
        return true
    }

    match, _ = regexp.MatchString(floatPattern, str)
    if match {
        return true
    }

    return false
}

func main() {
    fmt.Println(isNumber("123"))    // true
    fmt.Println(isNumber("12.3"))   // true
    fmt.Println(isNumber("abc"))    // false
    fmt.Println(isNumber("1a2b3c")) // false
}
Copy after login

In the above code, we wrote an isNumber function to perform number verification verify. This function accepts a string as a parameter, and then uses integer regular expressions and floating point regular expressions to verify whether the string is a number. If the verification is successful, it returns true, otherwise it returns false.

Finally, in the main function, we call the isNumber function to verify whether some strings are numbers. As you can see, if the input string is a number, the return result of the function is true, otherwise it is false.

In actual development, digital verification is a very common operation. Using regular expressions makes it easier for us to perform numerical verification. The above is an introduction to using regular expressions to verify whether a string is a number in golang.

The above is the detailed content of Use regular expressions in golang to verify whether a string is a number. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template