python在string中找到“=”索引的中间部分

时间:2017-03-16 13:07:25

标签: python string indexing position

例如'“Hello Word”=“hello world”;','“Hello = Word”=“Hello = Word”',通过python找到“=”位置的中间位置。 我试试这个

>>>line = '"Hello=Word" = "Hello=Word"'
>>>index = line.index("=")
>>> index
6

我希望它返回13

2 个答案:

答案 0 :(得分:1)

可能是使用正则表达式的一种情况。

import re
re.search(r'^".*".*(=).*".*"$', line).start(1)

这假设字符串是您指定的格式,"两侧的双引号=分隔字符串。

答案 1 :(得分:1)

实际上,您还可以通过=查看字符串中enumerate(line)的所有匹配项。它返回一个enumerate对象,该对象是可迭代的,包含格式(索引,项)的元组。所以,可以这样使用:

>>> occurrences = [x[0] for x in enumerate(line) if x[1] == '=']
>>> occurrences
[6, 13, 21]

现在你应该选择你需要的索引。