3

正規表現で最適化する方法が必要です。これが私が扱っている文字列です:

rr='JA=3262SGF432643;KL=ASDF43TQ;ME=FQEWF43344;JA=4355FF;PE=FDSDFHSDF;EB=SFGDASDSD;JA=THISONE;IH=42DFG43;'

JA=4355FFそして、前にあるものだけを取りたいJA=THISONEので、このようにしました:

aa='.*JA=([^.]*)JA=THISONE[^.]*'
aa=re.compile(aa)
print (re.findall(aa,rr))

そして私は得る:

['4355FF;PE=FDSDFHSDF;EB=SFGDASDSD;']

私の最初の問題は、文字列の適切な部分の検索が遅いことです(検索したい文字列が大きすぎて、通常JA=THISONEは文字列の最後にあるため)

そして2番目の問題は、取得できません4355FFが、すべての文字列がJA=THISONE.

誰かが私の正規表現を最適化するのを手伝ってくれますか? ありがとうございました!

4

2 に答える 2