-2

我有一个这样的字符串:

id=PS\\ Old\\ Gen

我会构建一个正则表达式来确定它是否包含反斜杠;一个接一个地。所以在这种情况下,正则表达式应该找到 2 次,因为有 2 次\\

我尝试建立查询,但找不到正确的方法。

我需要与 Go 兼容的正则表达式。

4

2 回答 2

2

您可以使用strings.Count(myString, \)

用文字示例:

package main

import (
    "fmt"
    "strings"
)

func main() {
    myString := `id=PS\\Old\\Gen`
    a := `\`
    i := strings.Count(myString, a)
    fmt.Println(i)
}

结果 = 4

没有文字

package main

import (
    "fmt"
    "strings"
)

func main() {
    myString := "id=PS\\Old\\Gen"
    a := `\`
    i := strings.Count(myString, a)
    fmt.Println(i)
}

结果=2

如果你只需要包含使用

myString := "id=PS\\ Old\\ Gen"
a:=`\`
i := strings.Contains(myString, a)
fmt.Println(i)

结果=真

于 2019-02-05T11:36:12.073 回答
1

听起来你不需要知道它的位置或发生\\,因为我建议尽可能简单:

import "strings"

...

fmt.Println(strings.Contains("id=PS\\ Old\\ Gen", "\\")) // true

所以你可以只存储"\\"在你的配置中。

于 2019-02-05T11:38:39.593 回答