如果我有一個字符串:更好的方法從字符串中獲取多個標記? (Python 2)
「快速的棕色狐狸跳過了懶狗!
我會經常使用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!"
這是實現這一目標的最佳方式是什麼?還是有更高效或更可讀的方式?
這對我來說很好。你的問題到底是什麼? – jterrace
我不認爲你想在所有的例子中使用'testTokens.split('')'。 'testTokens'已經是'testString.split(「」)',所以你只是想按原樣使用它。 – abarnert
如果你在空間上分裂,爲什麼不使用'testString.split()'來代替?它將把連續的空格作爲一個單獨的空格來處理(儘管我想你可能想保留連續的空格)。 – FastTurtle