Oracle 11g を使用しています。次のステートメントの実行には約 3 秒かかります。
select case when regexp_like(
'blahblahblahblah.blah@blah-blah.blah.gov.uk',
'^[\-a-zA-Z0-9_''^&\+\?\:]+(\.?[\-a-zA-Z0-9_''^&\+\?\:]+)*@([a-zA-Z0-9]+\.)+[a-zA-Z]{2,3}$')
then 'true' else 'false' end
電子メール アドレスに別の文字を追加する:
'blahblahblahblah.blahx@blah-blah.blah.gov.uk'
6秒かかります。別の文字 12、次に 24、48 など。そう:
'blahblahblahblah.blahxxxxx@blah-blah.blah.gov.uk'
実行には約 96 秒かかります。
ただし、ハイフンを削除します。
'blahblahblahblah.blahxxxxx@blahblah.blah.gov.uk'
そしてそれは即座に実行されます。
ここで何が起こっているか知っている人はいますか?