我想用一个替换我的前导空格nbsp;
每个空白。
So:
spam --> spam
eggs --> eggs
spam eggs --> spam eggs
我见过一些使用正则表达式的解决方案,但都是其他语言的。
我在 Python 中尝试过以下方法,但没有成功。
import re
raw_line = ' spam eggs'
line = re.subn('\s+', ' ', raw_line, len(raw_line))
print(line) # outputs spam eggs
line = re.sub('\s+', ' ', raw_line)
print(line) # outputs spam eggs
line = re.sub('^\s', ' ', raw_line)
print(line) # outputs spam eggs
line = re.sub('^\s+', ' ', raw_line)
print(line) # outputs spam eggs
最后一行似乎最接近,但还没有雪茄。
将每个前导空格替换为的正确方法是什么
在Python中?
如果有一种干净的方法可以在没有正则表达式的情况下做到这一点,我会很乐意接受,但我自己无法弄清楚。
你甚至不需要昂贵的正则表达式在这里,只需去掉前导空格并在前面添加一些
删除字符数的字符数:
def replace_leading(source, char=" "):
stripped = source.lstrip()
return char * (len(source) - len(stripped)) + stripped
print(replace_leading("spam")) # spam
print(replace_leading(" eggs")) # eggs
print(replace_leading(" spam eggs")) # spam eggs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)