回答
str="http://google.com/translate_t"
shortened=str[0:str.rfind("/")]
应该这样做。 str [a:b]在python中返回一个子字符串。 rfind用于从字符串的末尾开始查找字符序列的索引。
SilentGhost的分割版本更加清晰,IMO。 – 2009-02-14 17:52:42
另外,如果字符串中没有“/”,则返回缩短一个字符的初始字符串。 – tzot 2009-02-14 20:28:16
如果您知道字符的位置,然后你可以用切片的语法来创建一个新的字符串:
In [2]: s1 = "abc123"
In [3]: s2 = s1[:3]
In [4]: print s2
abc
要发现你可以使用字符串的find()
或index()
方法的位置。 split()
和partition()
方法也可能有用。 这些方法记录在Python docs for sequences中。
删除一部分字符串是不可能的,因为字符串是不可变的。
如果你想处理URL,那么你应该使用urlparse library。它可以让你将URL分成不同的部分。如果你只是想删除一部分文件路径,那么你将不得不自己去做。
如果你问一个抽象的字符串,而不是网址,你可以一起去:
>>> astring ="http://google.com/translate_t"
>>> astring.rpartition('/')[0]
http://google.com
对于网址,使用urlparse:
>>> import urlparse
>>> parts = urlparse.urlsplit('http://google.com/path/to/resource?query=spam#anchor')
>>> parts
('http', 'google.com', '/path/to/resource', 'query=spam', 'anchor')
>>> urlparse.urlunsplit((parts[0], parts[1], '', '', ''))
'http://google.com'
对于任意的字符串,使用re:
>>> import re
>>> re.split(r'\b/\b', 'http://google.com/path/to/resource', 1)
['http://google.com', 'path/to/resource']
- 1. 删除python中的字符
- 2. Python:从字符串中删除字符
- 3. 在Python打印行中删除字符
- 4. 在python输出中删除`u`字符
- 5. 在python中添加/删除字符?
- 6. 在Python中删除字符串
- 7. Python从字符串中删除字母
- 8. 在Python中删除字符串中的特殊字符
- 9. 如何删除特殊字符在python
- 10. Python - 删除字符串中的空格
- 11. python从列表项中删除字符
- 12. 从字符串中删除撇号python
- 13. 删除Python字符串中的'b'
- 14. 从Python字符串中删除
- 15. 从python字符串中删除emojis
- 16. PHP在字符串中删除字符
- 17. 如何从python中的字符串中删除中间字符?
- 18. 在Python中删除字符串中的大写字母
- 19. Python:从第一个数字字符中删除字符串
- 20. Python如何从列表中的字符串中删除字符
- 21. 从python中的字符串中删除非UTF-8字符
- 22. 从Python中的字符串中删除不需要的字符
- 23. 删除Python中字符串中的多余字符
- 24. 从Python中的字符串中删除奇怪的字符
- 25. 如何从python中的字符串中删除子字符串?
- 26. 从python中的字符串中删除一组前缀字符
- 27. 如何从Python中的字符串中删除字符串?
- 28. 在Python中删除字符串中的所有非数字字符
- 29. 删除字符串从特定字符在python
- 30. 如何从混合字符串删除单个字符在Python
这不是*真*删除 - Python无法更新字符串。这是提取一个子串到一个给定的位置。你可能想要重述你的问题。 – 2009-02-14 16:21:21