1. ホーム
  2. string

[解決済み】2つの部分文字列の間にある文字列を検索する【重複あり

2022-04-17 03:31:01

質問

<余談
この質問には、すでにここで回答があります :
クローズド 3年前 .

2つの部分文字列の間にある文字列を見つけるには、どうすればよいのでしょうか ( '123STRINGabc' -> 'STRING' )?

私の今のやり方は、こんな感じです。

>>> start = 'asdf=5;'
>>> end = '123jasd'
>>> s = 'asdf=5;iwantthis123jasd'
>>> print((s.split(start))[1].split(end)[0])
iwantthis

しかし、これは非常に非効率的で、ピストニック的でないように思えます。 このようなことを行うためのより良い方法は何でしょうか?

言い忘れました。 で始まったり終わったりしない文字列を指定することができます。 startend . 前後の文字数が増えるかもしれないそうです。

どのように解決するのですか?

import re

s = 'asdf=5;iwantthis123jasd'
result = re.search('asdf=5;(.*)123jasd', s)
print(result.group(1))