Python - 用双引号和括号排除数据

时间:2015-10-30 15:09:46

标签: python-3.x

我有一个列表,其中包含单引号和双引号中的单词集,现在我想只用单引号grep所有数据。

Input_
sentence = ['(telco_name_list.event_date','reference.date)',"'testwebsite.com'",'data_flow.code',"'/long/page/data.jsp'"]

输出:

telco_name_list.event_date,reference.date,data_flow.code

我想用双引号排除括号和字符串。

1 个答案:

答案 0 :(得分:0)

由于您将帖子标记为python-3.x,我假设您要编写python代码。根据您的示例,这将起作用:

#!/usr/bin/env python3
Input_sentence = ['(telco_name_list.event_date','reference.date)',"'testwebsite.com'",'data_flow.code',"'/long/page/data.jsp'"]

comma = False
result = []
for i in range(len(Input_sentence)):
  e = Input_sentence[i]
  if e.startswith("'"): continue
  e = e.replace('(', '').replace(')', '') 
  if comma:
    print(",", end="")
  comma = True
  print(e, end="")
print()

此代码遍历列表,忽略以单引号开头的元素,并在将元素打印到stdout之前从元素中过滤掉括号。这段代码适用于给定的例子,但可能是也可能不是你需要的东西,因为你想要的确切语义有些含糊不清(也就是过滤掉所有括号或只是你的开头和结尾的那些括号)元素?)。