Home > Article > Backend Development > How to use regular expressions in golang to verify whether the input is a legal movie list
Using regular expressions in golang to verify that the input is a legal movie list is a relatively simple task. This article will introduce how to use golang to match input data with regular expressions to check whether the input conforms to the format of a movie list.
First of all, we need to understand the format of the movie list. A basic movie list can contain information such as movie title, director, year, and rating. Here, we will use the following movie list format [Example]:
Titanic,James Cameron,1997,7.7 Forrest Gump,Robert Zemeckis,1994,8.8
The above example contains two movies: "Titanic" and "Forrest Gump". Each row of data contains the movie's name, director, year, and rating, separated by commas.
Next, we will use regular expressions in golang to verify whether the input conforms to the above format. In golang, regular expressions usually consist of regular expression strings and regular expression objects. A regular expression string is a string containing special characters and ordinary characters, which describes the matching pattern of one or more strings. A regular expression object is a compiled regular expression that can be used to perform text search and replace operations.
Next, we will write a golang program to check whether the input text conforms to the format of the above movie list. The following are the steps to implement the program:
We need to define a regular expression to match the format of the movie list. In golang, we can use regular expression strings to define a regular expression.
var movieListRe = regexp.MustCompile(`^([a-zA-Zs]+),([a-zA-Zs]+),(d{4}),([0-9].[0-9])$`)
The above regular expression matches each row of data in the movie list, which contains four groups:
We need to define a string containing movie list data as input data.
data := `Titanic,James Cameron,1997,7.7 Forrest Gump,Robert Zemeckis,1994,8.8`
The above input data contains two movies, "Titanic" and "Forrest Gump".
We use regular expression objects to match input data. In golang, we can use the MatchString function for matching.
isValid := movieListRe.MatchString(data)
If the input data matches the matching pattern of the regular expression, return true; otherwise, return false.
Finally, we need to output the verification results.
if isValid { fmt.Println("输入数据符合电影列表格式") } else { fmt.Println("输入数据不符合电影列表格式") }
After the above program is executed, if the input data conforms to the movie list format, it will output "The input data conforms to the movie list format"; otherwise, it will output "The input data does not conform to the movie list format".
The complete code example is as follows:
package main import ( "fmt" "regexp" ) var movieListRe = regexp.MustCompile(`^([a-zA-Zs]+),([a-zA-Zs]+),(d{4}),([0-9].[0-9])$`) func main() { data := `Titanic,James Cameron,1997,7.7 Forrest Gump,Robert Zemeckis,1994,8.8` isValid := movieListRe.MatchString(data) if isValid { fmt.Println("输入数据符合电影列表格式") } else { fmt.Println("输入数据不符合电影列表格式") } }
After the above program is executed, "the input data conforms to the movie list format" is output. This is because the input data conforms to the format requirements of the movie list. If the movie name or director name in the data is written as a number, or the rating is written as a number without a decimal point, and the program is executed again, "The input data does not conform to the movie list format" will be output.
Summary:
Using regular expressions in golang to verify that the input is a legal movie list is a simple and useful task. We can easily accomplish this task by defining regular expressions, defining input data, verifying input data, and outputting results. In particular, when writing regular expressions, we need to accurately describe the matching pattern to ensure that the format requirements of the data are met.
The above is the detailed content of How to use regular expressions in golang to verify whether the input is a legal movie list. For more information, please follow other related articles on the PHP Chinese website!