我正在尝试在Python中插入换行符,如果我在文本中遇到多个空格,我想替换为一个空格和一个换行符。我的数据存储在Excel单元格中。这就是我的代码的样子,
import pandas as pd
import re
def excelcleaner(textstring):
return textstring.replace(" ","\n")
df = pd.read_excel("lbook.xlsx")
df["clean_content"] = df["uncleaned_content"].apply(excelcleaner)
df.to_excel("lbook.xlsx")
现在,它用换行符替换指定的空格(现在是2)。我该如何修改它,以便它检测空格数并用单个换行符代替。
答案 0 :(得分:3)
您可以从正则表达式模块中使用re.sub
:
import re
def excelcleaner(textstring):
# This will find any 2 or more spaces and replace with a newline char
return re.sub('\s{2,}', '\n', textstring)
mystr = "abc 123 efg 111"
print(excelcleaner(mystr))
abc 123
efg
111
如果您不熟悉正则表达式语法,则\s
是空白字符,{<min>, <max>}
是范围指示符。 {2,}
说找到两个或多个事件