写在前面:java作为一门世界级编程语言金字塔顶尖的语言。需要大量的练习、练习、练习来巩固自己所获得的知识。冰冻三尺非一日之寒,希望大家在学习java的日子里一定一定要坚持不懈,严格要求。多练,多问,多百度。祝大家早日成为一名优秀的软件工程师!

字符串是不管在java前端还是后台中都是用的最多最多的一个数据类型,所有前后台交互的数据都是字符串String类型。

那么如何来定义String字符串呢,注意,用双引号或者单引号引起来的一切的数据都是字符串。比如:

js字符串切割_js \xa0字符_js正则表达式匹配任意字符

所有的这一些,只要用引号引起来了,都是字符串。

在这里,所有的字符串都是用双引号引起来的,那么什么时候使用到单引号呢?那就是拼接元素的时候。举个例子:

比如,我想在一个id = box的div中,拼接一段下拉框元素,最后的效果如下:

js字符串切割_js \xa0字符_js正则表达式匹配任意字符

这个该怎么拼接呢?那么我们用JS来实现:

js \xa0字符_js正则表达式匹配任意字符_js字符串切割

在这里,我们的双引号中又带有双引号,就会造成代码的混乱。这样最后的结果就是显示不出来,那么如何更改这段代码呢?这时候就要用到我们的单引号了:

最后更改为图上代码,显示就没问题了。

注意,这里一部分双引号我改成了单引号,但是最后面的2个option里的value,我用来转义了双引号。这个的作用就是告诉程序,后面的那一个字符,仅仅作为一个输出字符来展现,而不具有任何特殊的意义。单引号和转义都是可以的,但是推荐大家在开发过程中使用单引号,因为一旦转义符多了,代码也会显得非常凌乱,可读性非常的差。

在我们的字符串中,也有许多的内置函数,我给大家举几个常用的:

1.大小写的转换:

效果如下:

toUpperCase()方法是将所有字母转换成大写字母,相反的,toLowerCase()方法是将所有字母转换成小写字母。

2.字符串的替换:

js字符串切割_js正则表达式匹配任意字符_js \xa0字符

这里的效果如下:

js正则表达式匹配任意字符_js字符串切割_js \xa0字符

replace是代表字符串的替换,第一个参数是需要替换的字符,也就是old ,第二个参数是需要替换成什么字符,也就是new。

但是我们发现了一个问题,这里只替换了第一个ojs字符串切割,第二个o并没有替换,但是大部分时候我们需要的替换是全局性的js字符串切割,并不是只替换一个,那么全局性的我们要怎么做呢?这时候就要用到我们的正则表达式:

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

我们来举个例子:

js字符串切割_js正则表达式匹配任意字符_js \xa0字符

先看效果:

js \xa0字符_js字符串切割_js正则表达式匹配任意字符

我们发现,已经出现了我们想要的效果,那么这段代码究竟是什么意思呢?

首先,我们定义了一个正则类RegExp,他的第一个参数就是规则字符串,在这里,我们的规则就是o字母,第二个ig是什么意思呢?i代表的时候忽略大小写,也就是大写的O还是小写的o,他都会替换掉,g代表全局。那么加起来就是替换掉全局的,不管大小写的o。

之后,我们把这个正则表达式放入replace的第一个参数,最后替换掉所有的o。

我们再来写几个正则表达式的例子:

js \xa0字符_js字符串切割_js正则表达式匹配任意字符

效果如下:

js字符串切割_js正则表达式匹配任意字符_js \xa0字符

记住,这里的[0-9]是一个规则字符串,意思就是0到9的所有数字都将作为替换的字符。

但是对于这类纯数字的规则定义,正则表达式有一些比较简洁的写法:

js字符串切割_js \xa0字符_js正则表达式匹配任意字符

那么,也能得到同样的结果:

js \xa0字符_js正则表达式匹配任意字符_js字符串切割

关于正则表达式的一些规则语法,我们在接下来的文章中会详细的讲到。在这里就不做过多的阐述了。

3.分隔转换成数组:

js字符串切割_js \xa0字符_js正则表达式匹配任意字符

split的一个参数就是需要根据什么符号来截取,这里填了逗号,就表示会根据逗号来切割str这个字符串,最后形成一个数组。之后我们遍历这个数组,得出的结果如下:

js \xa0字符_js字符串切割_js正则表达式匹配任意字符

我们会发现,m依次输出了1-9的数字。

注意,这里的console.log()是打印在console里面,alert()是弹出对话框。一般调试的时候,我们更偏向于使用console.log(),以后的代码中我也会更多的在console中进行输出和调试。

4.截取字符串:

js正则表达式匹配任意字符_js \xa0字符_js字符串切割

输出效果如下:

js正则表达式匹配任意字符_js字符串切割_js \xa0字符

这里的subtring的2个参数,分别代表从第几位截到第几位,注意!js里面的字符串,第一位是从0开始!不是从1开始,比如,这里的第0位是1,第5位是6,以此类推。那么我们来看着几行代码,第一句,substring里面的参数分别是0,5,代表的是从第0位截到第5位,第0位是1,第5位是6,但是输出的是12345,这就代表,我们的substring截出来的字符串是包含第一个参数,不包含第二个参数的。

但是我们发现,str.substring(1,5)和str.substring(5,1)的结果是一样的,这就是substring里一个类似于防止出现顺序混乱的判断机制。2个参数一定是先取小的参数为准,从小的参数截取到大的参数,最后返回一个字符串给你们。

截取字符串还有另外一种方法:substr(num1,num2):

效果如下:

注意,这里的参数和substring的参数不一样,这里的2个参数代表的意义分别是

substr(从第几位开始截取,截取几个数字);

那么这里的4,3代表的意义就是从第4位开始截取,截取3位。第4位是5,截取3位,最后形成的答案就是567。

5.获取字符所在的下标:

我们来看一行代码:

js正则表达式匹配任意字符_js \xa0字符_js字符串切割

输出结果为2。意思就是,在str下标为2的字符是点 。 那么这个有什么用呢?我再多写两行代码,大家可能就明白了:

js正则表达式匹配任意字符_js \xa0字符_js字符串切割

效果如下:

indexOf的参数就是需要获取下标的字符。注意,这里获取的下标是检测到所需要获取下标的字符串中的第一个字符。只返回第一个所获取到字符的下标。那么,在这里,我们获取到.的下标以后,就可以根据下标截取自己所需要的信息,当然这里可能用split更为快捷一点,这里只是作为一个展示使用。

但是有一个问题,假如我把这个str的内容改的特殊一点呢?

js \xa0字符_js正则表达式匹配任意字符_js字符串切割

这样,我们再来看一下效果:

我们会发现,这样的截取不满足于我们所需要的数据,在这里,就需要用到lastIndexOf:

lastIndexOf,顾名思义,就是获取最后一个所对应字符的下标。原理和indexOf一样,indexOf是获取第一个所对应字符的下标,lastIndexOf是获取最后一个所对应字符的下标。

互动:原创不容易,很多人看完文章没有点赞留言的习惯,请大家支持我为文章点赞、分享。蕊蕊才有动力写更好的文章分享给大家。要有一万关注之后才能获得原创标识和留言功能。希望大家能分享。

关注java八点半,获取更多优质内容。

回复(直播)可以获取java八点半每天晚上八点半的免费在线直播教学课程喔。

回复(基础)可以获取java八点半所有优质内容。

回复(资源)可以获取java资源共享圈喔。

回复(视频)可以获取java八点半1024G的视频资料喔。

天气太热了攒钱买冰棍

限时特惠:本站每日持续更新海量设计资源,一年会员只需29.9元,全站资源免费下载
站长微信:ziyuanshu688