JavaScript 字符串的操作 正则表达式的使用教程!!!

目录

 

1.常用的字符串对象方法:

2.字符串的连接

3.字符串的搜索

4.字符串的截取

5.字符串的替换

6.字符串的切割

正则表达式

1.正则表达式的组成

2.正则表达式的使用方法


1.常用的字符串对象方法:

		<script type="text/javascript">
			var str = "apple";
			var str1 = "21";
			var str2 = "LOVE";
			//用大号字体显示字体串
			document.write(str.big());
			document.write("<br/>");
			//以打字机文本显示字符串
			document.write(str.fixed());
			document.write("<br/>");
			//设置字符串颜色
			document.write(str.fontcolor("red"));
			document.write("<br/>");
			//设置字符串大小
			document.write(str.fontsize('15px'));
			document.write("<br/>");
			//用小号字体显示字体串
			document.write(str.small());
			document.write("<br/>");
			//使用删除线显示字符串
			document.write(str.strike());
			document.write("<br/>");
			//将字符串显示为上标和下标
			document.write(str1.sup());
			document.write(str1.sub());
			document.write("<br/>");
			//将字符串转换为大写 两种方法
			document.write(str.toUpperCase());
			document.write("&nbsp&nbsp");
			document.write(str.toLocaleUpperCase());
			document.write("<br/>");
			//将字符串转换为小写 两种方法
			document.write(str2.toLocaleLowerCase());
			document.write("&nbsp&nbsp");
			document.write(str2.toLowerCase());
			document.write("<br/>");
			//返回某个字符串对象原始值
			document.write(str.valueOf());
		</script>

 演示效果:

2.字符串的连接

  • “+”号连接            格式:字符串1 +字符串2+......
  • concat 函数         格式:字符串名称.concat(字符串1,字符串2,......)
		<script type="text/javascript">
			var str1 = "hello";
			var str2 = "world";
			var str3 = str1 + " " + str2;
			var str4 = str1.concat(" "+str2);
			document.write(str3);
			document.write("<br/>");
			document.write(str4);
		</script>

演示效果:两种方法的效果是一样的,上述的 " " 可以理解为空格。

3.字符串的搜索

  • indexOf() 方法           格式:字符串名称.indexOf(搜索词,起始索引位置),不指定索引,则默认 为 0
  • lastIndexOf() 方法      格式:字符串名称.lastIndexOf()(搜索词,起始索引位置),检查索引顺序从后往前
  • search() 方法             格式:字符串名称.search(搜索词) /  字符串名称.search(正则表达式),用于检索字符串中指定的子字符串,或者用于检索与正则表达式相匹配的子字符串。返回第一个匹配的子字符串的起始位置,没有匹配则返回 -1 
  • match()                      格式:字符串名称.match(搜索词) /  字符串名称.match(正则表达式)。可在字符串内检索指定的值,或者找到多个正则表达式匹配的结果。如果搜索词或者正则表达式没有找到,那么match() 从开始位置进行一次匹配,没有匹配到结果,返回 null 。否则,返回一个数组,返回的数组内容为[匹配文本,index: ,input : ]
		<script type="text/javascript">
			var str1 = "IhaBCIEco";
			document.write(str1.indexOf("I",3));
			document.write("<br/>");
			document.write(str1.indexOf("ha"));
			document.write("<br/>");
			document.write(str1.lastIndexOf("a"));
			document.write("<br/>");
			document.write(str1.lastIndexOf("I", 3));
			document.write("<br/>");
			document.write(str1.search("a"));
			document.write("<br/>");
			document.write(str1.search("e"));
			document.write("<br/>");
			document.write(str1.search(/e/i)); //忽视大小写,/i
			document.write("<br/>");
			document.write(str1.match("d"));
			document.write("<br/>");
			document.write(str1.match("a"));
			console.log(str1.match("a")); //控制台会得到一个数组
		</script>

演示效果:

match() 会返回一个数组,包含文本信息,index,input 的信息

4.字符串的截取

  • substring() 方法   格式:字符串名称.substring(截取开始位置,截取结束位置) 。参数不能为负数,如果是负数则默认为 0,截取整个字符串。只要一个参数时,则表示截取这个参数到末尾的字符串。
  • slice()方法     格式:字符串名称.slice(截取开始位置,截取结束位置) 。如果参数为负数,则表示字符串的索引从末尾开始计算位置。例如:-1 就表示最后一个字符。
  • substr()方法   格式:字符串名称.substr(截取开始位置,length) 。表示包含截取位置(包括截取位置的字符)开始处的 length 个字符。只要一个参数表示,从截取位置到末尾的字符串。
		<script type="text/javascript">
			var str1 ="woshigexiannva";
			console.log(str1.substring(1,3)); //索引从1到3的结果是 os
			console.log(str1.substring(1));   //索引从1到末尾的结果是 oshigexiannva
			console.log(str1.substring(-1));  //索引从1到末尾的结果是 woshigexiannva 
			console.log(str1.slice(1,4));     //索引从1到4的结果是 osh
			console.log(str1.slice(-3,-1));   //索引从-3到-1的结果是 nv
			console.log(str1.slice(1,-1));    //索引从1到-1的结果是 oshigexiannv
			console.log(str1.slice(-1,-3));   //索引从-1到-3的结果是 空字符串 
			console.log(str1.substr(1,3));    //索引从1到3的结果是 osh
			console.log(str1.substr(2));      //索引从2到结尾的结果是 shigexiannva 
			console.log(str1.substr(-2,4));   //索引从-2到4的结果是 va 
			//此处substr(-2,4),表示从末尾的第二个字符开始,截取四个字符
            //由于后面没有字符了,就显示当前字符
		</script>

演示效果:

5.字符串的替换

replace()方法   格式:字符串名称.replace(需要被替换的字符串/正则表达式,替换之后的字符串)

		<script type="text/javascript">
			var str1 ="applw";
			document.write(str1.replace("w","e"));
		</script>

演示效果:

6.字符串的切割

split 方法    格式:split(用于分割的子字符串,返回数组的最大长度)

		<script type="text/javascript">
			var str1 ="a|b|c|d|e";
			console.log(str1.split("|"));
			console.log(str1.split("|",3));
		</script>

演示效果:


正则表达式

1.正则表达式的组成

  • 匹配符

   [a-z]:匹配小写字母从 a~z 中的任意一个字符

   [A-Z]:匹配大写字母从 A~Z 中的任意一个字符

   [0-9]:匹配数字 0~9 任意一个字符

   [0-9a-z]:匹配数字 0~9 或者小写字母 a~z 中任意一个字符

   [0-9a-zA-Z]:匹配数字 0~9 或者 a~z 大小写字母 中任意一个字符

   [abdc]:匹配字符abcd 中的任意一个字符

   [1234]:匹配数字 1234 中的任意一个字符

   ^ 这个符号表示取反,[^0-9]:表示除了数字0~9之外的任意一个字符

  • 限定符

    *:匹配前面的子表达式零次或者多次,可以用{0,}代替

    +:匹配前面的子表达式一次或者多次,可以用{1,}代替

     ?:匹配前面的子表达式零次或者一次,可以用{0,1}代替

     {n}:匹配确定的 n 次,例如{10},连续匹配10次

     {n,}:至少匹配 n 次,例如{2},最少匹配2次

     {n,m}:至少匹配 n 次,最多匹配 m 次,例如{1,5},最少匹配一次,最多匹配5次

  • 定位符

    ^:匹配输入字符串的开始位置

    $:匹配输入字符串的结束位置

    \b:匹配一个单词边界(字符串开头,结尾,空格,逗号,点号等符号)

    \B:匹配非单词边界

  • 转义符

    遇到特殊符号(()[]  * \  /  ^等),必须使用转义符(反斜杠\)进行转义

		<script type="text/javascript">
			var str1 = "12i345"; //定义一个字符串
			var str2 =   "2020-1-123"; //定义一个错误的日期
			var reg = /[^0-9]/;   //查看数字中是否含有其他字符
			var reg1 = /[\d]{8}/;  //含有8位数字的正则
			var reg2 =/^[\d]{4}-[\d]{1,2}-[\d]{1,2}$/  //日期的正则
			console.log(str1.search(reg)); //找到则返回找到的位置,否则返回-1
			console.log(str1.search(reg1)); //如果有8位数字,返回 0,否则返回-1
			console.log(reg2.test(str2)); //test 效验,符合返回 true ,否则返回 false
		</script>

演示结果:

 

2.正则表达式的使用方法

  • 字符串方法:

   search(),match(),replace(),split() 上面介绍过了,不重复介绍

  • 正则对象方法:

   test() 如果符合正则表达式,返回 true ,否则 返回 false

  exec() 找到匹配的内容返回一个数组,未找到匹配,返回 null


未经允许,禁止转载~今天又是努力的一天✌

猜你喜欢

转载自blog.csdn.net/qq_44761243/article/details/109051480