所以基本上我有一个像:
的CSV121\sdf\ 34 4333DSssD,23233,TECH,32, ...
第一个字符串是ID,但它应该有+不是空格。他们被剪掉了,所以现在每行都要到第一个逗号,我需要用+。
替换任何空格正在考虑使用正则表达式和re.sub(使用python进行处理)但是我只是在获取空格时遇到了麻烦。
希望StackOverflow可以提供帮助:D
答案 0 :(得分:2)
这可以在没有正则表达式的情况下完成;只是在逗号上分区并操纵左侧分区
with open('path/to/input') as infile:
for line in infile:
left, comma, right = line.partition(',')
print "%s%s%s" %(left.replace(' ', "+"), comma, right)
答案 1 :(得分:1)
这是一个没有正则表达式的解决方案(假设你有一个名为line
的单行字符串,这可能是在迭代文件对象的for
循环内部:< / p>
pieces = line.split(',', 1)
pieces[0] = pieces[0].replace(' ', '+')
line = ','.join(pieces)
或使用正则表达式:
import re
line = re.sub(r'^[^,]*', lambda m: m.group(0).replace(' ', '+'), line)