1
import re
st=input() #The input string
ss=input() #The substring to be searched
lss=len(ss)
lst=len(st)
x=lst-lss
for i in range(x):
r=re.search(r'(%s)'%ss,st,i)
if r:
print(r.start(),r.end())
上記のコードはタスクへの応答です。タスクは次のとおりです。Pythonで正規表現のコードが機能しない
文字列Sが指定されています。
入力された場合、私はS.内の文字列kの開始と終了のインデックスを見つける必要があり
:
aaadaa
aa
出力は次のようになります。
(0, 1)
(1, 2)
(4, 5)
私が知っています私が書いたコードは間違っています。なぜなら、私は目的の出力を得ていないからです。私はそれが間違っていると自分自身を説得することができません。私はちょうどforループの後のコードがうまくいかない理由を知りたいですか? 誰かが私を助けることができますか?
「i」をそのような「検索」に渡すとは思われません。検索の第3引数は 'flags'です。あなたがしようとしているのであれば、"検索を開始するインデックス "ではありません。 – Kevin
これには正規表現は必要ありません(それは過剰です)。標準の 'string.find()'を使用してください。 – zwer