Sample code for 30+ languages & platforms
PowerBuilder

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 PowerBuilder Downloads

PowerBuilder
integer li_rc
oleobject loo_Email
integer li_Match

//  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.

loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
if li_rc < 0 then
    destroy loo_Email
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Email.Subject = "Monthly invoice #4432"
loo_Email.From = "billing@example.com"

//  Check whether the Subject header value matches a wildcard pattern (case-insensitive).
li_Match = loo_Email.HasHeaderMatching("Subject","*invoice*",0)

if li_Match = 1 then
    Write-Debug "The Subject header contains 'invoice'."
else
    Write-Debug "The Subject header does not contain 'invoice'."
end if



destroy loo_Email