Python/Django:如何从字符串中删除多余的空格和制表符?

Con*_*ion 25 python string django

我正在使用Python/Django构建一个网站.用户提交标签.每个标签可以包含多个单词.每个标签都有一个ID号.我想确保格式略有不同的标签仍然被识别为相同的标签.

例如,如果一个用户提交了标签"电吉他"而另一个用户提交了"电吉他"(两个单词之间有2个白色空格),我希望能够识别它们是相同的标签.

在这种情况下,如何删除所有额外的空格和制表符?谢谢.

Ign*_*ams 52

在任何空格上拆分,然后在单个空间上连接.

' '.join(s.split())
Run Code Online (Sandbox Code Playgroud)

  • 或换行=''.join(oldline.split())...花了一分钟才发现这是一个新手. (5认同)

Thi*_*ter 20

>>> import re
>>> re.sub(r'\s+', ' ', 'some   test with     ugly  whitespace')
'some test with ugly whitespace'
Run Code Online (Sandbox Code Playgroud)


Mar*_*row 7

我会使用Django的slugify方法,它将空间压缩成一个短划线和其他有用的功能:

from django.template.defaultfilters import slugify
Run Code Online (Sandbox Code Playgroud)