首页 > 解决方案 > 使用python查找两个符号之间的字符而无需重新

问题描述

我需要打印''之间的字符

import linecache
line = linecache.getline("sele4.py", 27)
print ((line))
text2 = line[line.find("\'")+1:line.find("\' ")]
print (text2)

输出:

driver.find_element_by_xpath("//*[contains(text(), 'Line A')]").click()

Line A')]").click()

预期输出:

driver.find_element_by_xpath("//*[contains(text(), 'Line A')]").click()

Line A

除了文件 sele4.py 的第 27 行外,我应该只得到“A 行”,但会得到额外的字符。我是新手。请纠正我哪里出错了。

谢谢您的帮助

标签: pythonstring

解决方案


您可以仅使用以下内容text2来删除'和以后吗?

text = text2.split("'", 1)[0]

或者更好的是从一开始就这样做:

line.split("'")[1]

说明:split("a")每次出现 . 时,将字符串拆分为单独的字符串a。对于您的用例,我的第一个示例将其拆分为["Line A", "')]\").click()"],并且我使用下标来选择序列的第一个元素。同样,我的第二个示例将您的字符串拆分为["driver.find_element_by_xpath(\"//*[contains(text(), '", "Line A", "')]\").click()"],我使用下标来获取序列的第二个元素。


推荐阅读