1、去除空格操作
function trimStr(str, type) {
switch (type) {
case 1:
return str.replace(/^\s+/g, "");//去除所有空格
break;
case 2:
return str.replace(/(^\s*)|(\s*$)/g, "");//去除前後空格
break;
case 3:
return str.replace(/^\s*/g, "");//去除前空格
break;
case 4:
return str.replace(/\s*/g, "");//去除後空格
break;
default:
return str;
}
}
2、字母大小寫切換
function transferCase(str) {
var itemText = "";
str.split("").forEach(function (item, index) {
if(/^[a-z]+/.test(item)){//如果是小寫,則轉換成大寫
itemText += item.toUpperCase();
}else if(/^[A-Z]+/.test(item)){//如果是大寫,則轉換成小寫
itemText += item.toLowerCase();
}else {//以上兩者都不滿足,則返回原字符
itemText += item;
}
})
return itemText;
}
//大小寫切換
function changeCase(str, type) {
switch (type) {
case 1:
return str.replace(/^(\w)(\w+)/, function (v, v1, v2) {
/*
* 函數的三個參數:
* v表示當前要測試的字符串,
* v1表示首字母,
* v2表示剩餘字母
* */
console.log(v,v1,v2);
return v1.toUpperCase() + v2.toLowerCase();
});
break;
case 2:
return str.replace(/^(\w)(\w+)/,function (v, v1, v2) {
return v1.toLowerCase() + v2.toUpperCase();
});
break;
case 3:
return str.toUpperCase();
break;
case 4:
return str.toLowerCase();
break;
case 5:
return transferCase(str);
default:
return str;
}
}
//每個單詞的首字母大寫
function upperFirst(str){
var arr = str.split(" ");
var str1 = "";
for(var i = 0; i < arr.length; i++){
str += arr[i].substring(0,1).toUpperCase + arr[i].substring(1) + " ";
}
return str1;
}
3、字符串的循環複製
function copy(str,count){
var strText = ""
for( var i = 0; i < count; i ++){
strText += str;
}
return strText;
}
4、字符串的替換
function changeStr(str,cStr,insteadStr){
var reg = new RegExp(cStr, "g");//每匹配一次就會創建一個reg對象,然後將該對象替換,直至無法找見爲止
return str.replace(reg, insteadStr);
}
5、字符串的檢測
function checkStr(str, type) {
switch (type) {
case 'email':
return /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str);
break;
case 'phone':
return /^1[3|4|5|7|8][0-9]{9}$/.test(str);
break;
case 'tel':
return /^(0\d{2,3}-\d{7,8})(-\d{1,4})?$/.test(str);
break;
case 'number':
return /^[0-9]$/.test(str);
break;
case 'english':
return /^[a-zA-Z]+$/.test(str);
break;
case 'chinese':
return /^[\u4E00-\u9FA5]+$/.test(str);
break;
case 'lower':
return /^[a-z]+$/.test(str);
break;
case 'upper':
return /^[A-Z]+$/.test(str);
break;
default :
return true;
}
}
6、檢測密碼強度
function checkPwd(str) {
var level = 0;
if (str.length < 6) {
return level;
}
if (/[0-9]/.test(str)) {
level++;
}
if (/[a-z]/.test(str)) {
level++;
}
if (/[A-Z]/.test(str)) {
level++;
}
if (/[\.|-|_]/.test(str)) {
level++;
}
return level;
}
7、檢測隨機碼
function randomStr(count){
//count表示將數字轉換爲幾進制
return Math.random().toString(count).substring(2)
}
8、查找指定字符串出現的長度
function findStr(str, strSplit) {
return str.split(strSplit).length -1 ;
}
9、查找一個字符在字符串中出現的次數,並且返回其出現的位置
/*
* @param:str => 被查找的字符串
* str1 => 要查找的字符
* start => 開始查找的字符串的索引位置
*/
function findCount(str, str1, start){
var count = 0;//字符串出現的次數
while(str.indexOf(str1, start) > -1){
count ++;
start = str.indexOf(str1,i) + str1.length;
}
return count;
}
10、字符串的反轉
function reverseStr(str){
return str.split("").reverse().join("");
}