热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

常见字符串操作函数封装

1、去除空格操作functiontrimStr(str,type){switch(type){case1:returnstr.replace(^\sg,);去除所有空格bre

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 }

3、字符串的循环复制

function copy(str,count){var strText = ""for( var i = 0; i }

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 &#61; 0;if (str.length <6) {return level;}if (/[0-9]/.test(str)) {level&#43;&#43;;}if (/[a-z]/.test(str)) {level&#43;&#43;;}if (/[A-Z]/.test(str)) {level&#43;&#43;;}if (/[\.|-|_]/.test(str)) {level&#43;&#43;;}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、查找一个字符在字符串中出现的次数&#xff0c;并且返回其出现的位置

/*
* &#64;param:str &#61;> 被查找的字符串
* str1 &#61;> 要查找的字符
* start &#61;> 开始查找的字符串的索引位置
*/
function findCount(str, str1, start){var count &#61; 0;//字符串出现的次数while(str.indexOf(str1, start) > -1){count &#43;&#43;;start &#61; str.indexOf(str1,i) &#43; str1.length;}return count;
}

10、字符串的反转

function reverseStr(str){return str.split("").reverse().join("");
}

推荐阅读
  • ***Createdbyjiachenpanon161118.**合法uri*exportfunctionvalidateURL(textval){consturlregex^( ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • switch语句的一些用法及注意事项
    本文介绍了使用switch语句时的一些用法和注意事项,包括如何实现"fall through"、default语句的作用、在case语句中定义变量时可能出现的问题以及解决方法。同时也提到了C#严格控制switch分支不允许贯穿的规定。通过本文的介绍,读者可以更好地理解和使用switch语句。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 如何优化Webpack打包后的代码分割
    本文介绍了如何通过优化Webpack的代码分割来减小打包后的文件大小。主要包括拆分业务逻辑代码和引入第三方包的代码、配置Webpack插件、异步代码的处理、代码分割重命名、配置vendors和cacheGroups等方面的内容。通过合理配置和优化,可以有效减小打包后的文件大小,提高应用的加载速度。 ... [详细]
  • Python中的PyInputPlus模块原文:https ... [详细]
  • 正则表达式及其范例
    为什么80%的码农都做不了架构师?一、前言部分控制台输入的字符串,编译成java字符串之后才送进内存,比如控制台打\, ... [详细]
  • 基础数据范例ECMAScript中有5种简朴数据范例(也称基础数据范例):Undefined,Null,Boolean,Number和String。另有一种庞杂数据范例(援用型)O ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • HashMap的扩容知识详解
    本文详细介绍了HashMap的扩容知识,包括扩容的概述、扩容条件以及1.7版本中的扩容方法。通过学习本文,读者可以全面了解HashMap的扩容机制,提升对HashMap的理解和应用能力。 ... [详细]
  • 获取时间的函数js代码,js获取时区代码
    本文目录一览:1、js获取服务器时间(动态)2 ... [详细]
  • Birthdate ... [详细]
author-avatar
皇家冷情绪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有