FindStringSubmatch 函數可找出正規表示式符合的第一個子字串:此函數傳回包含符合子字串的切片,第一個元素為整個匹配字串,後續元素為各個子字串。程式碼範例:regexp.FindStringSubmatch(text, pattern) 傳回符合子字串的切片。實戰案例:可用於匹配電子郵件地址中的域名,例如:email := "user@example.com",pattern := @([^\s]+)$ 取得域名 match[1]。
在 Go 語言中處理正規表示式符合時,我們可以使用 FindStringSubmatch
函數來找出符合的第一個子字串。此函數傳回一個包含匹配子字串的切片。第一個元素是整個匹配字串,而隨後的元素是匹配的各個子字串。
程式碼範例:
package main import ( "fmt" "regexp" ) func main() { // 定义要匹配的文本和正则表达式模式 text := "This is a sample text to match." pattern := `is` // 使用 FindStringSubmatch 找出匹配的第一个子字符串 match := regexp.FindStringSubmatch(text, pattern) // 输出匹配的子字符串 if len(match) > 0 { fmt.Println("匹配的子字符串:", match[0]) } else { fmt.Println("未找到匹配") } }
實戰案例:
使用FindStringSubmatch
來符合電子郵件地址中的網域名稱:
package main import ( "fmt" "regexp" ) func main() { // 定义要匹配的电子邮件地址 email := "user@example.com" // 定义用于匹配域名的正则表达式模式 pattern := `@([^\s]+)$` // 使用 FindStringSubmatch 找出匹配的第一个子字符串(域名) match := regexp.FindStringSubmatch(email, pattern) // 输出匹配的域名 if len(match) > 0 { fmt.Println("域名:", match[1]) } else { fmt.Println("未找到匹配") } }
上面的程式碼將輸出:
域名: example.com
以上是如何找出 Golang 正規表示式符合的第一個子字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!