NAME
Geo::UK::Postcode::Regex::Simple - Simplified interface to Geo::UK::Postcode::Regex
SYNOPSIS
use Geo::UK::Postcode::Regex::Simple ':all';
# Set behaviour of regular expression (defaults below)
local $Geo::UK::Postcode::Regex::Simple::MODE = 'strict';
local $Geo::UK::Postcode::Regex::Simple::PARTIAL = 0;
local $Geo::UK::Postcode::Regex::Simple::CAPTURES = 1;
local $Geo::UK::Postcode::Regex::Simple::ANCHORED = 1;
local $Geo::UK::Postcode::Regex::Simple::CASE_INSENSITIVE = 0;
# Regular expression to match postcodes
my $re = postcode_re;
my ( $area, $district, $sector, $unit ) = "AB10 1AA" =~ $re;
# Get hashref of data parsed from postcode
my $parsed = parse_pc "AB10 1AA";
# Extract list of postcodes from text string
my @extracted = extract_pc $text;
# Check if string is a correct postcode
if ( validate_pc $string ) {
...
}
Alternate global configuration:
use Geo::UK::Postcode::Regex::Simple #
-strict # or -lax, -valid
-full # or -partial
-anchored # or -unanchored
-captures # or -nocaptures
-case-sensitive # or -case-insensitive
;
DESCRIPTION
Alternative interface to Geo::UK::Postcode::Regex.
CONFIGURATION
MODE
Sets the regular expressions used to be in one of the following modes:
- lax
-
Matches anything that resembles a postcode.
- strict (default)
-
Matches only if postcode contains valid characters in the correct positions.
- valid
-
Matches only if the postcode contains valid characters and the outcode exists.
PARTIAL (default = false )
If true, regular expression returned by postcode_re
will match partial postcodes, at district (outcode) or sector level, e.g. "AB10" or "AB10 1".
ANCHORED (default = true )
Puts anchors (^
and $
) around the regular expression returned by postcode_re
.
CAPTURES (default = true )
Puts capture groups into the regular expression returned by postcode_re
. The matches returned upon a successful match are: area, district, sector and unit.
CASE_INSENSITIVE (default = false)
If false, only parses/matches/extracts postcodes that contain only upper case characters.
FUNCTIONS
postcode_re
my $re = postcode_re;
Returns a regular expression which will match UK Postcodes. See CONFIGURATION for details.
parse_pc
my $parsed = parse_pc $pc;
Returns a hashref of data extracted from the postcode. See parse
in Geo::UK::Postcode::Regex for more details.
extract_pc
my @extracted = extract_pc $test;
Returns a list of postcodes extracted from a text string. See extract
in Geo::UK::Postcode::Regex for more details.
validate_pc
if ( validate_pc $pc ) {
...
}
Boolean test for if a string is a (full) postcode or not, according to current MODE (see CONFIGURATION).
AUTHOR
Michael Jemmeson <mjemmeson@cpan.org>
COPYRIGHT
Copyright 2014- Michael Jemmeson
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.