js截取字符串中的一部分-归子莫的莫
js截取字符串中的一部分_归子莫的博客-CSDN博客_截取字符串中的一部分
截取操作: substring()截取
提取字符串中介于两个指定下标之间的字符
stringObject.substring(start, stop)
1、stringObject.substring(start, stop)
start(必需):一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop(可选):一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1
var str = "0123456789";
str.substring(3,5);
1、var str = "0123456789";
2、str.substring(3,5);
2、substr()截取
substr 方法用于返回一个从指定位置开始的指定长度的子字符串。
stringObject.substr(start, length)
1、stringObject.substr(start, length)
start(必需):所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
length(可选):在返回的子字符串中应包括的字符个数。
var str = "0123456789";
str.substr(3,5);
字符(Char)转换为字符串 方法一:使用Character.toString()
Character类提供了一个静态方法toString()用来将字符转换成字符串。
char ch = 'U';
String charToString = Character.toString(ch);
方法二:使用String.valueOf()
char ch = 'U';
String valueOfchar = String.valueOf(ch);
字符串转数组 toCharArray()
像”abcdefghijk”这种字符串假如它中间没有特殊符号隔开使用toCharArray()方法
String string1 = “abcdefghijk” ;
char [] strArr1 = string1.toCharArray(); //注意返回值是char数组
for(char i:strArr1) {System.out.println(i);}
split()
当字符串里面有符号进行分割时
1、符号特殊我们需要在前面加上\进行转义
String address=”上海|上海市|闵行区|吴中路”;
String[] splitAddress=address.split(“\|”); //如果以竖线为分隔符,则split的时候需要加上两个斜杠【\】进行转义
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);
2、符号不特殊我们不需要加\
String address=”上海,上海市,闵行区,吴中路”;
String[] splitAddress=address.split(“,”);
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);
3、多个符号作为分隔符
String address=”上海^上海市@闵行区#吴中路”;
String[] splitAddress=address.split(“\^|\@|\#”);
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]); 字符数组转成字符串
char[] str = {'h','e', 'l', 'l', 'o', ' ', '1','2','3'}; //创建一个字符数组
String string1 = new String(str);
String string2 = String.valueOf(str);
System.out.println(string1); //hello 123
System.out.println(string2);
System.out.println(string1 == string2); //false
System.out.println(string1.equals(string2)); //true
在上面的代码中,可以看出char数组转成字符串的方法有两种:
一种是直接将字符数组作为参数构造String对象; 另一种是使用String的valueOf()方法。
这两种方法得到的字符串都是相同的,但是在上面代码的最后两句:
System.out.println(string1 == string2); //false
System.out.println(string1.equals(string2)); //true
两者的结果不一样,因为在string1 == string2中,比较的是地址,由于string1 和 string2是两个不同的对象js 判断字符串是否相等,string1是通过new方法创建的,string2是由valueOf()方法返回的对象,所以二者的地址不一样,等式的结果就是false。
而String的equals()方法比较的是值,String的equals()方法也是通过将字符串拆分成一个一个的字符,再逐一进行比较js 判断字符串是否相等,所以比较的是值,string1.equals(string2)的结果就是true。
判断字符串是否相等: 使用equals()方法,不要使用==。 按照字典顺序比较字符串的大小: public int compareTo(String anotherString)
其返回的是一个int类型值,返回参与比较的前后两个字符串的asc码的差值。
若Str1等于参数字符串Str2字符串,则返回0;若该Str1按字典顺序小于参数字符串Str2,则返回值小于0;若Str1按字典顺序大于参数字符串Str2,则返回值大于0。
单一字符串进行比较:
String a="a",b="b";
System.out.println(a.compareto.b);
则输出-1;
若a="a",b="a"则输出0;
若a="b",b="a"则输出1;
两字符串不等长时: 首字母不同时:
若a="ab",b="b",则输出-1;
若a="abcdef",b="b"则输出-1;
也就是说,如果两个字符串首字母不同,则该方法返回首字母的asc码的差值;
首字母相同时:
若a="ab",b="a",输出1;
若a="abcdef",b="a"输出5;
若a="abcdef",b="abc"输出3;
若a="abcdef",b="ace"输出-1;
第一种情况:
参与比较的两个字符串如果首字符相同,则比较下一个字符,直到有不同的为止,返回该不同的字符的asc码差值。
第二种情况:
如果两个字符串不一样长,可以参与比较的字符又完全一样,则返回两个字符串的长度差值。
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
尘集杂货铺和官网1t5-cn
11月11日
[已回复]
希望主题和播放器能支持SQLite数据库,AI能多个讯飞星火