过滤掉较大字符串中的特定字符串?

时间:2012-02-26 22:20:11

标签: python string filtering

我是Python的新手,在这个脚本之后,我可能根本不会使用Python。我正在使用Scrapy提取一些数据并且必须过滤掉一些字符串(我已经使用isdigit()完成了这个数字)。谷歌搜索给了我关于过滤特殊字符串的网页,但我想要的只是一个较大字符串的一小部分。

这是字符串:

Nima Python: how are you?

我想要的东西:

how are you?

所以删除了这部分:

Nima Python:

先谢谢你们。

4 个答案:

答案 0 :(得分:5)

我假设会有其他这样的字符串...所以我猜str.split()可能是一个不错的选择。

>>> string = "Nima Python: how are you (ie: what's wrong)?"
>>> string.split(': ')
['Nima Python', 'how are you (ie', " what's wrong)?"]
>>> string.split(': ', 1)[1]
"how are you (ie: what's wrong)?"

答案 1 :(得分:3)

这有效:

>>> s = "Nima Python: how are you?"
>>> s.replace("Nima Python: ", "") # replace with empty string to remove
'how are you?'

答案 2 :(得分:3)

>>> string = 'Nima Python: how are you?'
>>> string.split(':')[1].strip()
'how are you?'

答案 3 :(得分:2)

字符串切片:(这是最简单的方法,但不是很灵活)

>>> string = "Nima Python: how are you?"
>>> string
'Nima Python: how are you?'
>>> string[13:] # Used 13 because we want the string from the 13th character
'how are you?'

字符串替换:

>>> string = "Nima Python: how are you?"
>>> string.replace("Nima Python: ", "")
'how are you?'

字符串拆分:(使用“:”将字符串拆分为两部分)

>>> string = "Nima Python: how are you?"
>>> string.split(":")[1].strip()
'how are you?'