ここから簡単な文字列操作で開始できます。 str.index
はあなたの親友です。文字列内の部分文字列の位置を教えてくれるからです。そして、あなたもどこかで、後の文字列で検索を開始することができます:
>>> myString = "this is the initial string"
>>> myString.index('the')
8
>>> myString.index('string', 8)
20
スライス[8:20]
を見ると、我々はすでに我々が望むものに近づく:もちろん
>>> myString[8:20]
'the initial '
を、我々は最初の位置を発見したので、 'the'
の場合、その長さを考慮する必要があります。そして最後に、我々は空白を取り除くしたい場合があります:
>>> myString[8 + 3:20]
' initial '
>>> myString[8 + 3:20].strip()
'initial'
組み合わせ、あなたがこれを行うだろう:あなたは試合のために複数回を見たい場合は
startIndex = myString.index('the')
substring = myString[startIndex + 3 : myString.index('string', startIndex)].strip()
を、そしてあなただけ繰り返す必要があります残りの文字列だけを見ながらこれを行います。 str.index
が唯一の初試合を見つけますので、あなたは非常に効率的に文字列をスキャンするためにこれを使用することができます:私はlist, split
の組み合わせを使用することをお勧め
mystring = "this is the initial string"
mystring = mystring.strip().split(" ")
for i in range(1,len(mystring)-1):
if(mystring[i-1] == "the" and mystring[i+1] == "string"):
print(mystring[i])
文字列を2つの既知の単語の間に挿入しますか?空白が 'Substring'の一部ではないのはなぜですか? –
さらに、 '' the ''と' 'string''が' mySrting'で何回も出現するとどうなりますか? –
@WillemVanOnsem文字列のリストを表示する必要があります。 –