`和'引用的正则表达式有什么区别?

tar*_*lah 9 regex go

为什么C:\\\\(引用`)正则 不匹配"C:\\"而且"C:\\\\"做什么?

r, err := regexp.Compile(`C:\\\\`) // Not match
r, err := regexp.Compile("C:\\\\")  // Matches
if r.MatchString("Working on drive C:\\") == true {
    fmt.Printf("Matches.") 
} else {
    fmt.Printf("No match.")
}
Run Code Online (Sandbox Code Playgroud)

fal*_*tru 8

原始字符串文字中的转义序列(引用引号)不会被解释.

`C:\\\\`
Run Code Online (Sandbox Code Playgroud)

相当于:

"C:\\\\\\\\"
Run Code Online (Sandbox Code Playgroud)

请参阅Go编程语言规范 - 字符串文字.