mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
71 lines (64 loc) • 2.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.normalizeNotWhiteSpace = exports.normalizeMobile = exports.normalizeIdCard = exports.normalizeEmail = exports.normalizeBankCard = void 0;
exports.normalizeNumber = normalizeNumber;
var _ut = require("ut2");
var _utilHelpers = require("util-helpers");
// 标准化输入
// 标准化输入非空白符
var normalizeNotWhiteSpace = exports.normalizeNotWhiteSpace = function normalizeNotWhiteSpace(value) {
// 如果替换全部空字符,输入中文时有bug
// return toString(value).replace(/\s/g, '');
return (0, _ut.toString)(value).trim();
};
// 标准化输入银行卡号
var normalizeBankCard = exports.normalizeBankCard = function normalizeBankCard(value) {
var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
var valueStr = (0, _ut.toString)(value);
var reg = /[^\d]/g;
var ret = valueStr.replace(reg, '');
return format ? (0, _utilHelpers.formatBankCard)(ret) : ret;
};
// 标准化输入身份证号
var normalizeIdCard = exports.normalizeIdCard = function normalizeIdCard(value) {
var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
var valueStr = (0, _ut.toString)(value);
var reg = /[^\dx]/gi;
var ret = valueStr.replace(reg, '').substring(0, 18);
return format ? ret.toUpperCase() : ret;
};
// 标准化输入手机号码
var normalizeMobile = exports.normalizeMobile = function normalizeMobile(value) {
var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
var valueStr = (0, _ut.toString)(value);
var reg = /[^\d]/g;
var ret = valueStr.replace(reg, '');
return format ? (0, _utilHelpers.formatMobile)(ret) : ret;
};
// 规整化数字输入
function normalizeNumber(value) {
var allowDot = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
var allowMinus = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
var valueStr = (0, _ut.toString)(value).replace(/[^\\.-\d]/g, '');
if (allowDot) {
var dotIndex = valueStr.indexOf('.');
if (dotIndex > -1) {
valueStr = valueStr.substring(0, dotIndex + 1) + valueStr.substring(dotIndex + 1).replace(/\./g, '');
}
} else {
valueStr = valueStr.split('.')[0];
}
var minusIndex = valueStr.indexOf('-');
if (allowMinus && minusIndex === 0) {
valueStr = '-' + valueStr.substring(1).replace(/-/g, '');
} else {
valueStr = valueStr.replace(/-/g, '');
}
return valueStr;
}
// 标准化邮箱(统一为小写)
var normalizeEmail = exports.normalizeEmail = function normalizeEmail(value) {
return normalizeNotWhiteSpace(value).toLowerCase();
};