[英]How to extract a path with in a string (which contains multiple delimiters) using python
我有一个像这样的字符串:
string = "Some thing like, this, 'multiple delimiters', present, '', '','' ,'','File\Path\To\Extract.csv', '', '', String Ends"
我想在整个字符串中提取此csv文件路径File\\Path\\To\\Extract.csv
。
尝试使用string.split("'")[n]
,但是我的定界符'
不固定,它会为每个字符串不断变化。
如果遇到这种情况,请突出显示解决方案。
谢谢。
试试这个,它不需要导入其他包。 您可以使用字符串操作执行此操作。
string = "Some thing like, this, 'multiple delimiters', present, '', '','' ,'','File\Path\To\Extract.csv', '', '', String Ends"
str_list=string.split("'")
for each in str_list:
if each.endswith('csv'):
print each
你需要这个:
string = "Some thing like, this, 'multiple delimiters', present, '', '','' ,'','File\Path\To\Extract.csv', '', '', String Ends"
print string.split(",")[8][1:-1]
要么
print string.split("'")[11]
要么
for i in string.split("'"):
if i.endswith("csv") and "\\" in i:
print i
输出:
File\Path\To\Extract.csv
使用正则表达式:
In [13]: import re
In [14]: s = "Some thing like, this, 'multiple delimiters', present, '', '','' ,'','File\Path\To\Extract.csv', '', '', String Ends"
In [15]: re.search(r"'([\w\\]+\.csv)'", s).group(1)
Out[15]: 'File\Path\To\Extract.csv'
你可以试试:
>>> string = "Some thing like, this, 'multiple delimiters', present, '', '','' ,'','File\Path\To\Extract.csv', '', '', String Ends"
>>> data_list = string.split(",")
>>> for data in data_list:
if "csv" in data:
print (data)
'File\Path\To\Extract.csv'
这个怎么样?
for item in string.split(","):
if ".csv" in item:
print(item)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.