Sample code for 30+ languages & platforms
C++

Test if an Email Header Matches a Pattern

See more Email Object Examples

Demonstrates the Chilkat Email.HasHeaderMatching method, which returns true when the email contains a header field named by the first argument whose value matches the wildcard pattern in the second argument. The third argument selects case-sensitive matching. This example checks whether the Subject contains the word "invoice".

Background: The value pattern supports wildcards — * matches any run of characters — so *invoice* matches any subject containing "invoice" anywhere. This is a compact way to classify or filter messages by header content, for example routing billing mail or flagging automated notices, without manually fetching the header value and testing it yourself.

Chilkat C++ Downloads

C++
#include <CkEmail.h>

void ChilkatSample(void)
    {
    //  Demonstrates the HasHeaderMatching method, which returns true when the email contains a
    //  header field named by the first argument whose value matches the wildcard pattern in the second argument.  The third argument selects
    //  case-sensitive matching.

    CkEmail email;
    email.put_Subject("Monthly invoice #4432");
    email.put_From("billing@example.com");

    //  Check whether the Subject header value matches a wildcard pattern (case-insensitive).
    bool match = email.HasHeaderMatching("Subject","*invoice*",false);

    if (match == true) {
        std::cout << "The Subject header contains 'invoice'." << "\r\n";
    }
    else {
        std::cout << "The Subject header does not contain 'invoice'." << "\r\n";
    }
    }