Search Gmail using Gmail’s search syntax
To provide access to the full Gmail search syntax, Gmail provides the X-GM-RAW search attribute.
Arguments passed along with the X-GM-RAW attribute when executing the SEARCH command will be interpreted in the same manner as in the Gmail web interface.
// C# version using (Imap imap = new Imap()) { imap.ConnectSSL("imap.gmail.com"); imap.UseBestLogin("pat@gmail.com", "password"); // Select 'All Mail' folder CommonFolders common = new CommonFolders(client.GetFolders()); client.Select(common.AllMail); List<long> uids = imap.Search().Where( Expression.GmailRawSearch( "in:inbox subject:Notification with -without")); foreach (MessageInfo info in imap.GetMessageInfoByUID(uids)) { Console.WriteLine("{0} - {1}", info.Envelope.GmailThreadId, info.Envelope.Subject); } imap.Close(); }
' VB.NET version Using imap As New Imap() imap.ConnectSSL("imap.gmail.com") imap.UseBestLogin("pat@gmail.com", "password") ' Select 'All Mail' folder Dim common As New CommonFolders(client.GetFolders()) client.Select(common.AllMail) Dim uids As List(Of Long) = imap.Search().Where( _ Expression.GmailRawSearch( _ "in:inbox subject:Notification with -without")) For Each info As MessageInfo In imap.GetMessageInfoByUID(uids) Console.WriteLine("{0} - {1}", _ info.Envelope.GmailThreadId, _ info.Envelope.Subject) Next imap.Close() End Using
You can learn more about this Gmail IMAP extension here:
http://code.google.com/apis/gmail/imap/#x-gm-raw
June 13th, 2015 at 13:06
[…] Search Gmail using Gmail’s search syntax […]