validator / 5.2.0 last updated 2 months ago created on Jan 4th 2011
Install
npm install --save validator
Clone
git clone git@github.com:chriso/validator.js.git
dependencies
No dependencies listed.
maintainers
cohara87
versions
136 total
| 5.2.0 | 2 months ago | cohara87 |
| 5.1.0 | 3 months ago | cohara87 |
| 5.0.0 | 3 months ago | cohara87 |
| 4.9.0 | 3 months ago | cohara87 |
| 4.8.0 | 3 months ago | cohara87 |
| 4.7.1 | 4 months ago | cohara87 |
| 4.7.0 | 4 months ago | cohara87 |
| 4.6.1 | 4 months ago | cohara87 |
| 4.6.0 | 4 months ago | cohara87 |
| 4.5.2 | 4 months ago | cohara87 |
| 4.5.1 | 4 months ago | cohara87 |
| 4.5.0 | 5 months ago | cohara87 |
| 4.4.0 | 6 months ago | cohara87 |
| 4.3.0 | 6 months ago | cohara87 |
| 4.2.1 | 7 months ago | cohara87 |
| 4.2.0 | 7 months ago | cohara87 |
| 4.1.0 | 8 months ago | cohara87 |
| 4.0.6 | 8 months ago | cohara87 |
| 4.0.5 | 9 months ago | cohara87 |
| 4.0.4 | 9 months ago | cohara87 |
| 4.0.3 | 9 months ago | cohara87 |
| 4.0.2 | 10 months ago | cohara87 |
| 4.0.1 | 10 months ago | cohara87 |
| 4.0.0 | 10 months ago | cohara87 |
| 3.43.0 | 10 months ago | cohara87 |
| 3.42.0 | 10 months ago | cohara87 |
| 3.41.3 | 10 months ago | cohara87 |
| 3.41.2 | a year ago | cohara87 |
| 3.41.1 | a year ago | cohara87 |
| 3.41.0 | a year ago | cohara87 |
| 3.40.1 | a year ago | cohara87 |
| 3.40.0 | a year ago | cohara87 |
| 3.39.0 | a year ago | cohara87 |
| 3.38.0 | a year ago | cohara87 |
| 3.37.0 | a year ago | cohara87 |
| 3.36.0 | a year ago | cohara87 |
| 3.35.0 | a year ago | cohara87 |
| 3.34.0 | a year ago | cohara87 |
| 3.33.0 | a year ago | cohara87 |
| 3.32.0 | a year ago | cohara87 |
| 3.30.0 | a year ago | cohara87 |
| 3.29.0 | a year ago | cohara87 |
| 3.28.0 | a year ago | cohara87 |
| 3.27.0 | a year ago | cohara87 |
| 3.26.0 | a year ago | cohara87 |
| 3.25.0 | a year ago | cohara87 |
| 3.24.0 | a year ago | cohara87 |
| 3.23.0 | a year ago | cohara87 |
| 3.22.2 | a year ago | cohara87 |
| 3.22.1 | 2 years ago | cohara87 |
| 3.22.0 | 2 years ago | cohara87 |
| 3.21.0 | 2 years ago | cohara87 |
| 3.20.0 | 2 years ago | cohara87 |
| 3.19.1 | 2 years ago | cohara87 |
| 3.19.0 | 2 years ago | cohara87 |
| 3.18.1 | 2 years ago | cohara87 |
| 3.18.0 | 2 years ago | cohara87 |
| 3.17.2 | 2 years ago | cohara87 |
| 3.17.1 | 2 years ago | cohara87 |
| 3.17.0 | 2 years ago | cohara87 |
| 3.16.1 | 2 years ago | cohara87 |
| 3.16.0 | 2 years ago | cohara87 |
| 3.15.0 | 2 years ago | cohara87 |
| 3.14.1 | 2 years ago | cohara87 |
| 3.14.0 | 2 years ago | cohara87 |
| 3.13.0 | 2 years ago | cohara87 |
| 3.12.0 | 2 years ago | cohara87 |
| 3.11.2 | 2 years ago | cohara87 |
| 3.11.1 | 2 years ago | cohara87 |
| 3.11.0 | 2 years ago | cohara87 |
| 3.10.0 | 2 years ago | cohara87 |
| 3.9.0 | 2 years ago | cohara87 |
| 3.8.0 | 2 years ago | cohara87 |
| 3.7.0 | 2 years ago | cohara87 |
| 3.6.0 | 2 years ago | cohara87 |
| 3.5.1 | 2 years ago | cohara87 |
| 3.5.0 | 2 years ago | cohara87 |
| 3.4.0 | 2 years ago | cohara87 |
| 3.3.0 | 2 years ago | cohara87 |
| 3.2.1 | 2 years ago | cohara87 |
| 3.2.0 | 2 years ago | cohara87 |
| 3.1.0 | 2 years ago | cohara87 |
| 3.0.0 | 2 years ago | cohara87 |
| 2.1.0 | 2 years ago | cohara87 |
| 2.0.0 | 3 years ago | cohara87 |
| 1.5.1 | 3 years ago | cohara87 |
| 1.5.0 | 3 years ago | cohara87 |
| 1.4.0 | 3 years ago | cohara87 |
| 1.3.0 | 3 years ago | cohara87 |
| 1.2.2 | 3 years ago | cohara87 |
| 1.2.1 | 3 years ago | cohara87 |
| 1.2.0 | 3 years ago | cohara87 |
| 1.1.3 | 3 years ago | cohara87 |
| 1.1.2 | 3 years ago | cohara87 |
| 1.1.1 | 3 years ago | cohara87 |
| 1.1.0 | 3 years ago | cohara87 |
| 1.0.0 | 3 years ago | cohara87 |
| 0.5.0 | 3 years ago | cohara87 |
| 0.4.28 | 3 years ago | cohara87 |
| 0.4.27 | 3 years ago | cohara87 |
| 0.4.25 | 3 years ago | cohara87 |
| 0.4.24 | 3 years ago | cohara87 |
| 0.4.23 | 3 years ago | cohara87 |
| 0.4.22 | 3 years ago | cohara87 |
| 0.4.21 | 3 years ago | cohara87 |
| 0.4.20 | 3 years ago | cohara87 |
| 0.4.19 | 3 years ago | cohara87 |
| 0.4.18 | 3 years ago | cohara87 |
| 0.4.17 | 4 years ago | cohara87 |
| 0.4.16 | 4 years ago | cohara87 |
| 0.4.15 | 4 years ago | cohara87 |
| 0.4.13 | 4 years ago | cohara87 |
| 0.4.12 | 4 years ago | cohara87 |
| 0.4.9 | 4 years ago | cohara87 |
| 0.4.8 | 4 years ago | cohara87 |
| 0.4.7 | 4 years ago | cohara87 |
| 0.4.6 | 4 years ago | cohara87 |
| 0.4.6-3 | 4 years ago | cohara87 |
| 0.4.6-2 | 4 years ago | cohara87 |
| 0.4.6-1 | 4 years ago | cohara87 |
| 0.4.5 | 4 years ago | cohara87 |
| 0.4.4 | 4 years ago | cohara87 |
| 0.4.3 | 4 years ago | cohara87 |
| 0.4.2 | 4 years ago | cohara87 |
| 0.4.1 | 4 years ago | cohara87 |
| 0.4.0 | 4 years ago | cohara87 |
| 0.3.9 | 4 years ago | cohara87 |
| 0.3.8 | 4 years ago | cohara87 |
| 0.3.7 | 4 years ago | cohara87 |
| 0.3.6 | 5 years ago | cohara87 |
| 0.3.5 | 5 years ago | cohara87 |
| 0.3.4 | 5 years ago | cohara87 |
| 0.3.2 | 5 years ago | cohara87 |
| 0.3.1 | 5 years ago | cohara87 |
| 0.3.0 | 5 years ago | cohara87 |
| 0.2.9 | 5 years ago | cohara87 |
readme
validator.js
A library of string validators and sanitizers.
Server-side usage
Install the library with npm install validator
ES6
Or, import only a subset of the library:
Client-side usage
The library can be loaded either as a standalone script, or through an AMD-compatible loader
The library can also be installed through bower
Strings only
This library validates and sanitizes strings only.
If you're not sure if your input is a string, coerce it using input + ''.
Passing anything other than a string is an error.
Validators
- contains(str, seed) - check if the string contains the seed.
- equals(str, comparison) - check if the string matches the comparison.
- isAfter(str [, date]) - check if the string is a date that's after the specified date (defaults to now).
- isAlpha(str [, locale]) - check if the string contains only letters (a-zA-Z). Locale is one of
['ar', 'ar-AE', 'ar-BH', 'ar-DZ', 'ar-EG', 'ar-IQ', 'ar-JO', 'ar-KW', 'ar-LB', 'ar-LY', 'ar-MA', 'ar-QA', 'ar-QM', 'ar-SA', 'ar-SD', 'ar-SY', 'ar-TN', 'ar-YE', 'cs-CZ', 'de-DE', 'en-AU', 'en-GB', 'en-HK', 'en-IN', 'en-NZ', 'en-US', 'en-ZA', 'en-ZM', 'es-ES', 'fr-FR', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'tr-TR']) and defaults toen-US. - isAlphanumeric(str [, locale]) - check if the string contains only letters and numbers. Locale is one of
['ar', 'ar-AE', 'ar-BH', 'ar-DZ', 'ar-EG', 'ar-IQ', 'ar-JO', 'ar-KW', 'ar-LB', 'ar-LY', 'ar-MA', 'ar-QA', 'ar-QM', 'ar-SA', 'ar-SD', 'ar-SY', 'ar-TN', 'ar-YE', 'cs-CZ', 'de-DE', 'en-AU', 'en-GB', 'en-HK', 'en-IN', 'en-NZ', 'en-US', 'en-ZA', 'en-ZM', 'es-ES', 'fr-FR', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'tr-TR']) and defaults toen-US. - isAscii(str) - check if the string contains ASCII chars only.
- isBase64(str) - check if a string is base64 encoded.
- isBefore(str [, date]) - check if the string is a date that's before the specified date.
- isBoolean(str) - check if a string is a boolean.
- isByteLength(str, options) - check if the string's length (in bytes) falls in a range.
optionsis an object which defaults to{min:0, max: undefined}. - isCreditCard(str) - check if the string is a credit card.
- isCurrency(str, options) - check if the string is a valid currency amount.
optionsis an object which defaults to{symbol: '$', require_symbol: false, allow_space_after_symbol: false, symbol_after_digits: false, allow_negatives: true, parens_for_negatives: false, negative_sign_before_digits: false, negative_sign_after_digits: false, allow_negative_sign_placeholder: false, thousands_separator: ',', decimal_separator: '.', allow_space_after_digits: false }. - isDataURI(str) - check if the string is a data uri format.
- isDate(str) - check if the string is a date.
- isDecimal(str) - check if the string represents a decimal number, such as 0.1, .3, 1.1, 1.00003, 4.0, etc.
- isDivisibleBy(str, number) - check if the string is a number that's divisible by another.
- isEmail(str [, options]) - check if the string is an email.
optionsis an object which defaults to{ allow_display_name: false, allow_utf8_local_part: true, require_tld: true }. Ifallow_display_nameis set to true, the validator will also matchDisplay Name <email-address>. Ifallow_utf8_local_partis set to false, the validator will not allow any non-English UTF8 character in email address' local part. Ifrequire_tldis set to false, e-mail addresses without having TLD in their domain will also be matched. - isFQDN(str [, options]) - check if the string is a fully qualified domain name (e.g. domain.com).
optionsis an object which defaults to{ require_tld: true, allow_underscores: false, allow_trailing_dot: false }. - isFloat(str [, options]) - check if the string is a float.
optionsis an object which can contain the keysminand/ormaxto validate the float is within boundaries (e.g.{ min: 7.22, max: 9.55 }). - isFullWidth(str) - check if the string contains any full-width chars.
- isHalfWidth(str) - check if the string contains any half-width chars.
- isHexColor(str) - check if the string is a hexadecimal color.
- isHexadecimal(str) - check if the string is a hexadecimal number.
- isIP(str [, version]) - check if the string is an IP (version 4 or 6).
- isISBN(str [, version]) - check if the string is an ISBN (version 10 or 13).
- isISIN(str) - check if the string is an ISIN (stock/security identifier).
- isISO8601(str) - check if the string is a valid ISO 8601 date.
- isIn(str, values) - check if the string is in a array of allowed values.
- isInt(str [, options]) - check if the string is an integer.
optionsis an object which can contain the keysminand/ormaxto check the integer is within boundaries (e.g.{ min: 10, max: 99 }). - isJSON(str) - check if the string is valid JSON (note: uses JSON.parse).
- isLength(str, options) - check if the string's length falls in a range.
optionsis an object which defaults to{min:0, max: undefined}. Note: this function takes into account surrogate pairs. - isLowercase(str) - check if the string is lowercase.
- isMACAddress(str) - check if the string is a MAC address.
- isMobilePhone(str, locale) - check if the string is a mobile phone number, (locale is one of
['ar-SY', 'cs-CZ', 'de-DE', 'el-GR', 'en-AU', 'en-GB', 'en-HK', 'en-IN', 'en-NZ', 'en-US', 'en-ZA', 'en-ZM', 'es-ES', 'fi-FI', 'fr-FR', 'ms-MY', 'nb-NO', 'nn-NO', 'pt-PT', 'ru-RU', 'tr-TR', 'vi-VN', 'zh-CN', 'zh-TW']). - isMongoId(str) - check if the string is a valid hex-encoded representation of a MongoDB ObjectId.
- isMultibyte(str) - check if the string contains one or more multibyte chars.
- isNull(str) - check if the string is null (has a length of zero).
- isNumeric(str) - check if the string contains only numbers.
- isSurrogatePair(str) - check if the string contains any surrogate pairs chars.
- isURL(str [, options]) - check if the string is an URL.
optionsis an object which defaults to{ protocols: ['http','https','ftp'], require_tld: true, require_protocol: false, require_valid_protocol: true, allow_underscores: false, host_whitelist: false, host_blacklist: false, allow_trailing_dot: false, allow_protocol_relative_urls: false }. - isUUID(str [, version]) - check if the string is a UUID (version 3, 4 or 5).
- isUppercase(str) - check if the string is uppercase.
- isVariableWidth(str) - check if the string contains a mixture of full and half-width chars.
- isWhitelisted(str, chars) - checks characters if they appear in the whitelist.
- matches(str, pattern [, modifiers]) - check if string matches the pattern. Either
matches('foo', /foo/i)ormatches('foo', 'foo', 'i').
Sanitizers
- blacklist(input, chars) - remove characters that appear in the blacklist. The characters are used in a RegExp and so you will need to escape some chars, e.g.
blacklist(input, '\\[\\]'). - escape(input) - replace
<,>,&,',"and/with HTML entities. - unescape(input) - replaces HTML encoded entities with
<,>,&,',"and/. - ltrim(input [, chars]) - trim characters from the left-side of the input.
- normalizeEmail(email [, options]) - canonicalize an email address.
optionsis an object which defaults to{ lowercase: true, remove_dots: true, remove_extension: true }. Withlowercaseset totrue, the local part of the email address is lowercased for all domains; the hostname is always lowercased and the local part of the email address is always lowercased for hosts that are known to be case-insensitive (currently only GMail). Normalization follows special rules for known providers: currently, GMail addresses have dots removed in the local part and are stripped of extensions (e.g.some.one+extension@gmail.combecomessomeone@gmail.com) and all@googlemail.comaddresses are normalized to@gmail.com. - rtrim(input [, chars]) - trim characters from the right-side of the input.
- stripLow(input [, keep_new_lines]) - remove characters with a numerical value < 32 and 127, mostly control characters. If
keep_new_linesistrue, newline characters are preserved (\nand\r, hex0xAand0xD). Unicode-safe in JavaScript. - toBoolean(input [, strict]) - convert the input string to a boolean. Everything except for
'0','false'and''returnstrue. In strict mode only'1'and'true'returntrue. - toDate(input) - convert the input string to a date, or
nullif the input is not a date. - toFloat(input) - convert the input string to a float, or
NaNif the input is not a float. - toInt(input [, radix]) - convert the input string to an integer, or
NaNif the input is not an integer. - trim(input [, chars]) - trim characters (whitespace by default) from both sides of the input.
- whitelist(input, chars) - remove characters that do not appear in the whitelist. The characters are used in a RegExp and so you will need to escape some chars, e.g.
whitelist(input, '\\[\\]').
XSS Sanitization
XSS sanitization was removed from the library in 2d5d6999.
For an alternative, have a look at Yahoo's xss-filters library or at DOMPurify.