Skip to the content

address-plusアドレスプラス

Parse, validate, format and compare addresses locally, add country modules and mount an optional native form field.

address-plus extends the parse-address style with typed results, validation, formatting and country modules. About the name

Contents

Reference · Parsing, formatting and shared types

VALIDATION_PATTERNSconstant

Small regular expressions the validators share: letters, digits, a house number at the start, and the like.

Import it

import { VALIDATION_PATTERNS } from "@johnmorrisdotca/address-plus";

Definition

const VALIDATION_PATTERNS: { readonly HAS_LETTERS: RegExp; readonly ALPHANUMERIC: RegExp; readonly HAS_DIGITS: RegExp; readonly HOUSE_NUMBER_START: RegExp; readonly STARTS_WITH_NUMBER: RegExp; readonly WHITESPACE_SPLIT: RegExp; readonly TITLE_CASE: RegExp; readonly NUMERIC_ONLY: RegExp; readonly NON_WORD: RegExp; readonly REGEX_ESCAPE: RegExp; readonly NORMALIZE_SPACES: RegExp; readonly PO_BOX_NORMALIZE: RegExp; } = {
    HAS_LETTERS: /[a-zA-Z]/,
    ALPHANUMERIC: /[a-zA-Z0-9]/g,
    HAS_DIGITS: /\d/,
    HOUSE_NUMBER_START: /^(\d+|\w\d+\w\d+)\b/,
    STARTS_WITH_NUMBER: /^\s*(\d|\w\d+\w\d+)/,
    WHITESPACE_SPLIT: /\s+/,
    TITLE_CASE: /^[A-Z]/,
    NUMERIC_ONLY: /^\d+$/,
    NON_WORD: /[^\w]/g,
    REGEX_ESCAPE: /[.*+?^${}()|[\]\\]/g,
    NORMALIZE_SPACES: /\s+/g,
    PO_BOX_NORMALIZE: /^p\.o\.\s*box$/i,
} as const

Members

NameTypeDescription
HAS_LETTERSRegExp
ALPHANUMERICRegExp
HAS_DIGITSRegExp
HOUSE_NUMBER_STARTRegExp
STARTS_WITH_NUMBERRegExp
WHITESPACE_SPLITRegExp
TITLE_CASERegExp
NUMERIC_ONLYRegExp
NON_WORDRegExp
REGEX_ESCAPERegExp
NORMALIZE_SPACESRegExp
PO_BOX_NORMALIZERegExp

Examples

import { VALIDATION_PATTERNS } from "@johnmorrisdotca/address-plus";

console.log(VALIDATION_PATTERNS.STARTS_WITH_NUMBER.test("123 Main St"));
// → true
true

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/address-plus 1.7.0.