diff --git a/lib/isHexadecimal.js b/lib/isHexadecimal.js index fd894f860..93752a5b6 100644 --- a/lib/isHexadecimal.js +++ b/lib/isHexadecimal.js @@ -9,7 +9,7 @@ var _assertString = _interopRequireDefault(require("./util/assertString")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -var hexadecimal = /^[0-9A-F]+$/i; +var hexadecimal = /^(0x)?[0-9A-F]+$/i; function isHexadecimal(str) { (0, _assertString.default)(str); diff --git a/src/lib/isHexadecimal.js b/src/lib/isHexadecimal.js index 1e4f17e03..19adb077a 100644 --- a/src/lib/isHexadecimal.js +++ b/src/lib/isHexadecimal.js @@ -1,6 +1,6 @@ import assertString from './util/assertString'; -const hexadecimal = /^[0-9A-F]+$/i; +const hexadecimal = /^(0x|0h)?[0-9A-F]+$/i; export default function isHexadecimal(str) { assertString(str); diff --git a/test/validators.js b/test/validators.js index 2043af8bd..3bae22e9d 100644 --- a/test/validators.js +++ b/test/validators.js @@ -2495,11 +2495,23 @@ describe('Validators', () => { valid: [ 'deadBEEF', 'ff0044', + '0xff0044', + '0XfF0044', + '0x0123456789abcDEF', + '0X0123456789abcDEF', + '0hfedCBA9876543210', + '0HfedCBA9876543210', + '0123456789abcDEF', ], invalid: [ 'abcdefg', '', '..', + '0xa2h', + '0xa20x', + '0x0123456789abcDEFq', + '0hfedCBA9876543210q', + '01234q56789abcDEF', ], }); });