kits-core
Version:
Kits core module
74 lines (65 loc) • 2.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
/**
*
* @param string
* @returns {string}
*/
var convertStringToSnakeCase = exports.convertStringToSnakeCase = function convertStringToSnakeCase(string) {
if (!string) return "";
if (typeof string !== 'string') return '';
return string.replace(/\W+/g, ' ').split(/ /).map(function (word) {
return word.toLowerCase();
}).join('_');
};
/**
*
* @param str
* @returns {string|*}
*/
var removeAscent = function removeAscent(str) {
if (str === null || str === undefined) return str;
str = str.toLowerCase();
str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');
str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');
str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');
str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');
str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');
str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');
str = str.replace(/đ/g, 'd');
return str;
};
/**
*
* @param str
* @returns {boolean}
*/
var isVietnameseText = exports.isVietnameseText = function isVietnameseText(str) {
if (!str) return false;
if (typeof str !== 'string') return false;
str = str.toLowerCase();
var strRemoveAscent = removeAscent(str);
return strRemoveAscent === str;
};
/**
*
* @param strWithInt
* @returns {number}
*/
var extractNumberFromString = exports.extractNumberFromString = function extractNumberFromString(strWithInt) {
if (!strWithInt) return 0;
if (typeof strWithInt === 'number') return strWithInt;
var regexPattern = /[+-]?\d+(\.\d+)?/g;
var matchData = strWithInt.match(regexPattern);
var resArr = matchData && matchData.map(function (v) {
return parseFloat(v);
});
return resArr && resArr.length > 0 ? resArr[0] : 0;
};
exports.default = {
convertStringToSnakeCase: convertStringToSnakeCase,
isVietnameseText: isVietnameseText,
extractNumberFromString: extractNumberFromString
};