2 lines
5.6 KiB
JavaScript
Raw Permalink Normal View History

2025-06-02 21:34:56 +08:00
const e={isBlank:function(e){return void 0===e||null==e||""===this.trim(e)},isNotBlank:function(t){return!1===e.isBlank(t)},isEmpty:function(e){return null==e||""===e},isNotEmpty:function(t){return!e.isEmpty(t)},nullToStr:function(t){return e.isEmpty(t)?"":t},trim:function(e){return null==e?"":e.toString().replace(/(^\s*)|(\s*$)|\r|\n/g,"")},equals:function(e,t){return e===t},equalsIgnoreCase:function(e,t){return String(e).toUpperCase()===String(t).toUpperCase()},split:function(t,r,n){if(e.isEmpty(t))return null;const a=String(t).split(r);return n?a.slice(0,n-1):a},sprintf:function(e){let t=arguments,r=!0,n=1;return e=e.replace(/%s/g,(function(){const e=t[n++];return void 0===e?(r=!1,""):e})),r?e:""},startWith:function(e,t){return new RegExp("^"+t).test(e)},endWith:function(e,t){return new RegExp(t+"$").test(e)},containsWhitespace:function(e){return this.contains(e," ")},repeat:function(e,t){let r="";for(let n=0;n<t;n++)r+=e;return r},deleteWhitespace:function(e){return e.replace(/\s+/g,"")},rightPad:function(e,t,r){return e+this.repeat(r,t)},leftPad:function(e,t,r){return this.repeat(r,t)+e},capitalize:function(e){return null==e||0===e.length?e:e.replace(/^[a-z]/,(function(e){return e.toLocaleUpperCase()}))},uncapitalize:function(e){return null==e||0===e.length?e:e.replace(/^[A-Z]/,(function(e){return e.toLocaleLowerCase()}))},swapCase:function(e){return e.replace(/[a-z]/gi,(function(e){return e>="A"&&e<="Z"?e.toLocaleLowerCase():e>="a"&&e<="z"?e.toLocaleUpperCase():void 0}))},countMatches:function(e,t){if(this.isEmpty(e)||this.isEmpty(t))return 0;let r=0,n=0;for(;-1!==(n=e.indexOf(t,n));)n+=t.length,r++;return r},isAlpha:function(e){return/^[a-z]+$/i.test(e)},isAlphaSpace:function(e){return/^[a-z\s]*$/i.test(e)},isAlphanumeric:function(e){return/^[a-z0-9]+$/i.test(e)},isAlphanumericSpace:function(e){return/^[a-z0-9\s]*$/i.test(e)},isNumeric:function(e){return/^(?:[1-9]\d*|0)(?:\.\d+)?$/.test(e)},isDecimal:function(e){return/^[-+]?(?:0|[1-9]\d*)\.\d+$/.test(e)},isNegativeDecimal:function(e){return/^\-?(?:0|[1-9]\d*)\.\d+$/.test(e)},isPositiveDecimal:function(e){return/^\+?(?:0|[1-9]\d*)\.\d+$/.test(e)},isInteger:function(e){return/^[-+]?(?:0|[1-9]\d*)$/.test(e)},isPositiveInteger:function(e){return/^\+?(?:0|[1-9]\d*)$/.test(e)},isNegativeInteger:function(e){return/^\-?(?:0|[1-9]\d*)$/.test(e)},isNumericSpace:function(e){return/^[\d\s]*$/.test(e)},isWhitespace:function(e){return/^\s*$/.test(e)},isAllLowerCase:function(e){return/^[a-z]+$/.test(e)},isAllUpperCase:function(e){return/^[A-Z]+$/.test(e)},defaultString:function(e,t){return null==e?t:e},defaultIfBlank:function(e,t){return this.isBlank(e)?t:e},defaultIfEmpty:function(e,t){return this.isEmpty(e)?t:e},reverse:function(e){return this.isBlank(e),e.split("").reverse().join("")},removeSpecialCharacter:function(e){return e.replace(/[!-/:-@\[-`{-~]/g,"")},isSpecialCharacterAlphanumeric:function(e){return/^[!-~]+$/.test(e)},isPatternMustExcludeSomeStr:function(e,t){const r=t.matcherFlag,n=t.excludeStrArr,a=t.length,s=t.ignoreCase,i=n.length;let c=0===i?"^":"^(?!.*(?:{0}))",u="";for(let o=0;o<i;o++)n[o]=Bee.StringUtils.escapeMetacharacterOfStr(n[o]),u+=n[o],o!==i-1&&(u+="|");switch(c=this.format(c,[u]),r){case"0":c+="\\d";break;case"1":c+="[a-zA-Z]";break;case"2":c+="[a-z]";break;case"3":c+="[A-Z]";break;case"4":c+="[!-/:-@[-`{-~]";break;case"5":c+="[一-龥]";break;case"6":c+="[a-zA-Z0-9]";break;case"7":c+="[a-z0-9]";break;case"8":c+="[A-Z0-9]";break;case"9":c+="[!-~]";break;case"10":c+="[0-9一-龥]";break;case"11":c+="[a-z!-/:-@[-`{-~]";break;case"12":c+="[A-Z!-/:-@[-`{-~]";break;case"13":c+="[a-zA-Z!-/:-@[-`{-~]";break;case"14":c+="[a-z一-龥]";break;case"15":c+="[A-Z一-龥]";break;case"16":c+="[a-zA-Z一-龥]";break;case"17":c+="[一-龥!-/:-@[-`{-~]";break;case"18":c+="[一-龥!-~]";break;case"19":c+="[a-z一-龥!-/:-@[-`{-~]";break;case"20":c+="[A-Z一-龥!-/:-@[-`{-~]";break;case"100":c+="[sS]";break;default:alert(r+":This type is not supported!")}c+=this.isNotBlank(a)?"{"+a+"}":"+",c+="$";return new RegExp(c,s?"i":"").test(e)},format:function(e,t){return e.repl