django:如何从django.utils.safestring.SafeUnicode中获取子字符串

0 投票
2 回答
1897 浏览
提问于 2025-04-16 13:13

我注意到Django使用这个来处理字符串,但我想问一下,我能从django.utils.safestring.SafeUnicode中获取一个子字符串吗?

2 个回答

0

你应该可以对它进行切片,或者使用其他的 unicode 方法:

from django.utils import safestring

x = safestring.SafeUnicode(u'\u2018hi there\u2018')
print repr(x[:3])
u'\u2018hi'
1

是的,你可以这样做。只需把SafeUnicode当作普通字符串来处理——如果你想获取其中的一部分,可以用切片的方法。这个切片的类型是unicode(而不是SafeUnicode!);如果你想把它变成SafeUnicode字符串,只需根据这个切片创建一个新的字符串就可以了:

>>> from django.utils.safestring import SafeUnicode
>>> su = SafeUnicode("This is my original <strong>Safe string</strong>")
>>> just_the_strong = SafeUnicode(su[20:])
>>> print just_the_strong
u'<strong>Safe string</string>'
>>> type(just_the_strong)
<class 'django.utils.safestring.SafeUnicode'>

撰写回答