[ 'imapQuery' => 'FROM "@synergy.net.au"', 'regex' => '/New charges: \$(?[0-9]+(\.[0-9]{2})?) Due (?\d{1,2} \w{3} \d+)/' ], 'Water' => [ 'imapQuery' => 'FROM "@watercorporation.com.au"', 'regex' => '/Due date:.*?(?\d{1,2}\/\d{2}\/\d{4}).*?Amount to pay:.*\$(?[0-9]+(\.[0-9]{2})?)/', 'messageTransform' => function($message) { return implode(" ", array_map('trim', explode("\n", strip_tags(base64_decode($message))))); }, 'dateTransform' => function($date) { return str_replace('/', '-', $date); } ], 'Internet' => [ 'imapQuery' => 'FROM "@online.telstra.com"', 'regex' => '/Total \$(?[0-9]+(\.[0-9]{2})?).*?Due Date (?\d{1,2} \w{3} \d{4})/', 'messageTransform' => function($message) { return implode(" ", array_map('trim', explode("\n", strip_tags(html_entity_decode($message))))); } ], 'Gas' => [ 'imapQuery' => 'FROM "@energy.agl.com.au"', 'regex' => '/Direct Debit amount: \$(?[0-9]+(\.[0-9]{2})?).*?Direct Debit date: (?\d{1,2} \w{3} \d+)/', 'messageTransform' => function($message) { return implode(" ", array_map('trim', explode("\n", $message))); } ] ];