欲張りでない正規表現ステートメントを書き込もうとして問題が発生しました。
これが私の文字列です:
<strong>name</strong><strong>address</strong>mailto:blabla@email.com
これが私の正規表現クエリです:
<strong>(.*?)</strong>.*?([A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4})
問題は、文字列の名前ではなく、アドレスが必要なことです。したがって、正規表現クエリは欲張りでは<strong></strong>
なく、最も遠いのではなく最も近いものにする必要があります。
.*
また、検索文字列にはこれの複数のインスタンスがあるため、その前に(貪欲な)ものを追加するのではなく、一度に複数のインスタンスに一致させる必要があります。
したがって、これのすべてのインスタンスと一致し、名前ではなくアドレスをプルする必要があります。
<strong>name</strong><strong>address1</strong>mailto:blabla@email.com
<strong>name</strong><strong>address2</strong>mailto:blabla@email.com
<strong>name</strong><strong>address3</strong>mailto:blabla@email.com
<strong>name</strong><strong>address4</strong>mailto:blabla@email.com
前もって感謝します!