我正在使用函數regexp.matchString()將正則表達式模式匹配到我的字符串。我必須使用字邊界才能找到完全匹配。例如,我想匹配「計算」而不是「計算機」。問題是我的字符串將同時具有「計算」和「計算機」。所以我想用字邊界。我嘗試使用\ b在幾個在線go-regex測試器,它的工作。但是,\ b似乎不適用於regexp.matchString()函數。有誰知道是否有替代\ b?或者我如何獲得預期的結果? 我的代碼如何在regexp.MatchString()中使用字邊界( b)go
package main
import "fmt"
import "regexp"
func main() {
fmt.Println("Hello, playground")
brandName := "home;compute furniture;computer"
filterVal := "(?i)compute\b"
regexMatch, _ := regexp.MatchString(filterVal, brandName)
fmt.Println(regexMatch)
}
當我使用\ b時,此函數返回false。請幫忙
我還沒有在Go中玩過正則表達式,但是這裏常見的問題是用作字符串和正則表達式引擎的轉義字符的''''''。它可能正在被字符串吞噬,所以正則表達式引擎從來沒有看到它。嘗試雙重逃脫? –
謝謝亞當斯密。來自Anar-G的解決方案非常完美 – pritesh