查找字符串Go中是否存在反斜杠

时间:2019-02-05 10:59:32

标签: regex go telegraf telegraf-inputs-plugin

我有一个像这样的字符串:

data_transformed = np.equal(data.astype(int).values.tolist(), 0).astype(str) pd.DataFrame(data_transformed).apply(lambda x: [i.count('True') for i in ''.join(list(x)).split('False') if i], axis=1)

,我将构建一个正则表达式来确定它是否包含反斜杠;一个接一个地。因此,在这种情况下,由于有2个id=PS\\ Old\\ Gen,因此正则表达式应该找到2个出现次数。

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

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

2 个答案:

答案 0 :(得分: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)
}

Result = 2

如果只需要包含使用

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

Result = true

答案 1 :(得分:1)

听起来您不需要知道import "strings" ... fmt.Println(strings.Contains("id=PS\\ Old\\ Gen", "\\")) // true 的位置或出现的位置,因此在这种情况下,我建议尽量简化:

"\\"

因此,您只需将<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.greg</groupId> <artifactId>fat-jar</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging> <modules> <module>library-jar</module> <module>final-jar</module> </modules> </project> 存储在配置中即可。