Sample code for 30+ languages & platforms
Zig

Get a To Recipient's Address Only

See more Email Object Examples

Demonstrates the Chilkat Email.GetToAddr method, which returns only the address part (not the friendly-name part) of the Nth To recipient. The index is zero-based. This example adds two To recipients and prints each one's address.

Background: When you need the machine-usable part of a recipient — the actual user@domain — GetToAddr returns it without the surrounding display name. This is what you want for validating addresses, removing duplicates, or checking against an allow/deny list, since the display name is free-form text and unreliable for identity.

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main(init: std.process.Init) !void {
    const alloc = init.arena.allocator();

    // Demonstrates the GetToAddr method, which returns only the address part (not the friendly
    // name) of the Nth To recipient.  The index is zero-based.

    const email = try chilkat.Email.init();
    defer email.deinit();
    email.setSubject("GetToAddr example");

    email.addTo("Joe Smith", "joe@example.com") catch {};
    email.addTo("Jane Doe", "jane@example.com") catch {};

    const n = email.getNumTo();
    var i: i32 = 0;
    i = 0;
    while (i < n) : (i += 1) {
        std.debug.print("To {d} address: {s}\n", .{ i, try email.getToAddr(alloc, i) });
    }
}