在Python中删除括号中的文本
我已经用Python导入了一个csv文件。我正在尝试删除该文件中括号中的文本 我编写了以下代码: 以下是我的输出中的几行: 如您所见,括号中的文本仍然存在。代码似乎对文件不起作用 我想删除括号中的整个单词。例如,CompanyA CA的输出应该只为CompanyA,而不是CompanyA CA 下面是上述部分代码的一个示例,它确实提供了预期的结果 下面是该代码的输出: 任何帮助都将不胜感激。在Python中删除括号中的文本,python,Python,我已经用Python导入了一个csv文件。我正在尝试删除该文件中括号中的文本 我编写了以下代码: 以下是我的输出中的几行: 如您所见,括号中的文本仍然存在。代码似乎对文件不起作用 我想删除括号中的整个单词。例如,CompanyA CA的输出应该只为CompanyA,而不是CompanyA CA 下面是上述部分代码的一个示例,它确实提供了预期的结果 下面是该代码的输出: 任何帮助都将不胜感激。 感谢您的时间:您可以使用正则表达式来完成。下面的代码应该可以工作 import re input_te
感谢您的时间:您可以使用正则表达式来完成。下面的代码应该可以工作
import re
input_text = 'ewq[a [(b] ([c))]] This is a sentence. (once a day) [twice a day]'
print re.sub(r'[\(\[]+.*?[\)\]]+', '', input_text)
上述代码适用于任何输入。请在第一块中找到下面的代码和输入
csv_reader = ['CompanyA (CA)', 'CompanyC', 'CompanyD (CD)']
for line in csv_reader:
print re.sub(r'[\(\[]+.*?[\)\]]+', '', line)
您可以使用正则表达式来实现这一点。下面的代码应该可以工作
import re
input_text = 'ewq[a [(b] ([c))]] This is a sentence. (once a day) [twice a day]'
print re.sub(r'[\(\[]+.*?[\)\]]+', '', input_text)
上述代码适用于任何输入。请在第一块中找到下面的代码和输入
csv_reader = ['CompanyA (CA)', 'CompanyC', 'CompanyD (CD)']
for line in csv_reader:
print re.sub(r'[\(\[]+.*?[\)\]]+', '', line)
您还可以使用内置的find和rfind以及切片。从开始到开始大括号,再加上第一个开始大括号后第一个结束大括号中的字符串
def a(ts):
while '[' in ts:
ts=ts[:ts.rfind('[')]+ts[ts.find(']',ts.rfind('['))+1:]
while '(' in ts:
ts=ts[:ts.rfind('(')]+ts[ts.find(')',ts.rfind('('))+1:]
return ts
x = "ewq[a [(b] ([c))]] This is a sentence. (once a day) [twice a day]"
x = a(x)
print x
您还可以使用内置的find和rfind以及切片。从开始到开始大括号,再加上第一个开始大括号后第一个结束大括号中的字符串
def a(ts):
while '[' in ts:
ts=ts[:ts.rfind('[')]+ts[ts.find(']',ts.rfind('['))+1:]
while '(' in ts:
ts=ts[:ts.rfind('(')]+ts[ts.find(')',ts.rfind('('))+1:]
return ts
x = "ewq[a [(b] ([c))]] This is a sentence. (once a day) [twice a day]"
x = a(x)
print x
您定义了函数但不调用它?检查缩进定义函数但不调用它?检查您的合同Hi Praveen,谢谢您的回复。我的问题在我发布的第一段代码中。第二个代码块是显示代码工作。Hi@onthrease,代码适用于任何输入。请查找我的最新编辑。谢谢你Praveen。您的代码使用我将在Python中手动输入的名称列表。如果文件是CSV文件,它会是相同的代码吗?嗨,Praveen,谢谢你的回复。我的问题在我发布的第一段代码中。第二个代码块是显示代码工作。Hi@onthrease,代码适用于任何输入。请查找我的最新编辑。谢谢你Praveen。您的代码使用我将在Python中手动输入的名称列表。如果文件是CSV文件,它会是相同的代码吗?
def a(ts):
while '[' in ts:
ts=ts[:ts.rfind('[')]+ts[ts.find(']',ts.rfind('['))+1:]
while '(' in ts:
ts=ts[:ts.rfind('(')]+ts[ts.find(')',ts.rfind('('))+1:]
return ts
x = "ewq[a [(b] ([c))]] This is a sentence. (once a day) [twice a day]"
x = a(x)
print x