View Source Xema.Format (xema v0.17.4)
This module contains semantic validators for strings.
Summary
Functions
Checks if the string
is a valid date representation.
Checks if the string
is a valid date time representation.
Checks if the string
is a valid email representation.
Checks if the string
is a valid host representation.
Checks if the string
is a valid hostname representation.
Checks if the string
is a valid IPv4 address representation.
Checks if the string
is a valid IPv6 address representation.
Checks if the value matches the given type. The function expected a available
format
and a string
to check. Returns true
for a valid string
, false
otherwise.
Checks if the string
is a valid JSON pointer representation.
Return true if string
contains a regular expression.
Checks if the string
is a valid JSON pointer representation.
Returns true
for a valid format type, false
otherwise. This macro can be
used in guards.
Checks if the string
is a valid time representation.
Checks if the string
is a valid URI representation.
Checks if the string
is a valid URI fragment representation.
Checks if the string
is a valid URI path representation.
Checks if the string
is a valid URI query representation.
Checks if the string
is a valid URI reference representation.
Checks if the string
is a valid URI template representation.
Checks if the string
is a valid URI template path representation.
Checks if the string
is a valid URI user info.
Types
@type format() ::
:date
| :date_time
| :email
| :hostname
| :ipv4
| :ipv6
| :json_pointer
| :regex
| :relative_json_pointer
| :time
| :uri
| :uri_fragment
| :uri_path
| :uri_query
| :uri_reference
| :uri_template
| :uri_userinfo
The list of supported validators.
Functions
Checks if the string
is a valid date representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 3339, false
otherwise.
Checks if the string
is a valid date time representation.
This function returns true
if the value is a string
and is formatted as
defined by RFC 3339, false
otherwise.
Checks if the string
is a valid email representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 5322, false
otherwise.
The regular expression was taken from https://emailregex.com/.
Examples
iex> import Xema.Format
...> email?("marin.musterman@germany.net")
true
...> email?("Otto.Normalverbraucher")
false
...> email?("Otto.Normal@Verbraucher.NET")
true
...> email?("müller.aßa@foo.de")
true
...> email?("réñe@foo.de")
true
Checks if the string
is a valid host representation.
This function returns true
if the value is a valid IPv4 address, IPv6
address, or a valid hostname, false
otherwise.
Examples
iex> import Xema.Format
iex>
iex> host?("127.0.0.1")
true
iex> host?("localhost")
true
iex> host?("elixirforum.com")
true
iex> host?("go go go")
false
Checks if the string
is a valid hostname representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 1034, false
otherwise.
Checks if the string
is a valid IPv4 address representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 2673, false
otherwise.
Checks if the string
is a valid IPv6 address representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 2373, false
otherwise.
Checks if the value matches the given type. The function expected a available
format
and a string
to check. Returns true
for a valid string
, false
otherwise.
Examples
iex> Xema.Format.is?(:email, "foo@bar.net")
true
iex> Xema.Format.is?(:email, "foo.bar.net")
false
Checks if the string
is a valid JSON pointer representation.
Return true if string
contains a regular expression.
Checks if the string
is a valid JSON pointer representation.
Returns true
for a valid format type, false
otherwise. This macro can be
used in guards.
Checks if the string
is a valid time representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 3339, false
otherwise.
Checks if the string
is a valid URI representation.
This function returns true
if the value is a string and is formatted as
defined by RFC 3986, false
otherwise.
The following are two example URIs and their component parts:
hierarchical part
|
|-----------------------------------------|
authority path
| |
|-------------------------------||--------|
abc://username:password@example.com:123/path/data?key=value#fragid1
|-| |---------------| |---------| |-| |-------| |-----|
| | | | | |
scheme user information host port query fragment
urn:example:mammal:monotreme:echidna
|-| |------------------------------|
| |
scheme path
Wikipedia: Uniform Resource Identifier
Checks if the string
is a valid URI fragment representation.
Checks if the string
is a valid URI path representation.
See also Xema.Format.uri?/1
.
Checks if the string
is a valid URI query representation.
Checks if the string
is a valid URI reference representation.
Checks if the string
is a valid URI template representation.
Checks if the string
is a valid URI template path representation.
Checks if the string
is a valid URI user info.
See also Xema.Format.uri?/1
.