文字列があり'gfgfdAAA1234ZZZuijjk'
、その部分だけを抽出したいとします'1234'
。
私が知っているのは、興味のある部分の直前AAA
と直後の数文字だけです。ZZZ
1234
これを使用するとsed
、文字列で次のようなことが可能になります。
echo "$STRING" | sed -e "s|.*AAA\(.*\)ZZZ.*|\1|"
1234
そして、これが結果として私に与えられます。
Python で同じことを行うにはどうすればよいでしょうか?
ベストアンサー1
正規表現の使用 -ドキュメンテーション参考
import re
text = 'gfgfdAAA1234ZZZuijjk'
m = re.search('AAA(.+?)ZZZ', text)
if m:
found = m.group(1)
# found: 1234
または:
import re
text = 'gfgfdAAA1234ZZZuijjk'
try:
found = re.search('AAA(.+?)ZZZ', text).group(1)
except AttributeError:
# AAA, ZZZ not found in the original string
found = '' # apply your error handling
# found: 1234