Prevent using escapes in regular expression


ID: go-best-practices/regexp-raw-string

Language: Go

Severity: Info

Category: Best Practices


In Go, it is better to avoid using double backslashes (\\) in regular expressions and instead use raw string literals (enclosed by backticks) to define regular expressions.

When using double backslashes, each backslash has a special meaning and needs to be escaped. This can lead to confusion and make regular expressions harder to read and understand.

Using raw string literals with backticks, on the other hand, treats backslashes as regular characters and avoids the need for escaping. This simplifies the expression and makes it more readable.

Non-Compliant Code Examples

func main () {
   regexp.Compile("\\A(\\w+) total: items \\d+\\n\\z")

Compliant Code Examples

func main () {
   regexp.Compile(`\A(\w+) total: items \d+\n\z`)
} jetbrains

Seamless integrations. Try Datadog Code Analysis