考虑下面的代码:
word='hello.world'
//matchedWord to contain everything right of "hello"
matchedWord=word.lstrip('hello') //now matchedWord='.world'
如何在 str.lstrip(char) 不可用的 jython 2.1 中实现相同的目标。任何其他解决方法来删除一个单词的所有字符?
如果您确实需要使用.lstrip()
,可以将其重新实现为函数:
def lstrip(value, chars=None):
if chars is None:
chars=' \t\n'
while value and value[0] in chars:
value = value[1:]
return value
但是您需要注意什么.lstrip()
(和.rstrip()
和.strip()
)从前面去除一组字符,而不是前缀。从(cpython)文档中:
返回删除了前导字符的字符串的副本。参数是一个字符串,
chars
指定要删除的字符集。如果省略 orNone
,则chars
参数默认为删除空格。chars 参数不是前缀;相反,它的值的所有组合都被剥离:>>> ' spacious '.lstrip() 'spacious ' >>> 'www.example.com'.lstrip('cmowz.') 'example.com'