PCRE 正規表現を使用して、電子メールと郵便番号の両方を 1 行で抽出する必要があります。行には、任意の順序で他のフィールドが含まれる場合があります。各フィールドが存在する場合、一度だけ発生します。正規表現は、両方のフィールドが存在する場合にのみ結果を出力します。
この正規表現を書きましたが、行全体が表示されます
^(?=.*?[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}\b)(?=.*?\b[\d]{5}\b).*$
例:
f1 f2 11061 f3 abc@mydom.com f4
プリント ==> 11061 abc@mydom.com
f1 f2 f4 f3 xyz@mydom.com 10018
プリント ==> xyz@mydom.com 10018
f2 f4 10048 f3
プリント ==> ( null )
一致したパターンだけを印刷する方法はありますか?