如果我有一个字符串:
“敏捷的棕色狐狸跳过了懒狗!”
我会经常使用 split() 函数来标记字符串。
testString = "The quick brown fox jumps over the lazy dog!"
testTokens = testString.split(" ")
这会给我一个清单:
['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog!']
如果我想删除第一个令牌并保持令牌的 REST 完整,我将执行以下操作以使其成为单线:
newString = " ".join(testTokens.split(' ')[1:]) # "quick brown fox jumps over the lazy dog!"
或者,如果我想要某个范围:
newString = " ".join(testTokens.split(' ')[2:4]) # "brown fox"
newString = " ".join(testTokens.split(' ')[:3]) # "The quick brown"
当然,我可能想拆分除空格以外的其他内容:
testString = "So.long.and.thanks.for.all.the.fish!"
testTokens = testString.split('.')
newString = ".".join(testTokens.split('.')[3:]) # "thanks.for.all.the.fish!"
这是实现这一目标的最佳方法吗?还是有更有效或更易读的方式?