正则表达式 - 在CSV字符串中匹配列名称

时间:2017-12-13 18:38:32

标签: python regex csv

这里有完整的正则表达式新手,请原谅我这是一个愚蠢的问题。我在以下格式的CSV文件中有一行:

test_id|column1|column10|column11|column101|

我需要能够匹配Python中第一次出现的以下内容并在字符串中找到它的位置:

column1|, |column1| or |column1

我尝试在https://regexr.com/上使用[\|]?column1[\|]?来查看它是如何发生的,但它与列中的column1匹配。我该怎么做呢?

编辑:我完全同意这里没有使用Python正则表达式的评论。但是,如果我只是想使用正则表达式匹配模式,我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

如果您说将行存储为字符串,那么:

str1 = "test_id|column1|column10|column11|column101|"

然后您可以使用index()方法查找您要查找的每个匹配项的索引。

strs = ["column1|", "|column1|", "|column1"]

for s in strs:
    print(str1.index(s))

显然你必须做错误检查,但这会返回索引。

打印:

8
7
7