s关于字符串的一些操作:
1.获取字符串的长度: str.length (只能读,不能写)
2.读取字符串里的单个字符: 可以将字符串看成一个数组,单个的字符看成数组的元素,操作如下:
var str='abcdef';
alert(str[0]); //弹出a
但是,这个也只能读,不能给其赋值,比如:
str[1] = 'z';
这个是不可以的。
注:可读,不可写
3.获取某个位置的字符: str.charAt( 5 )
例子:
var str = 'abc';
alert(str[0]);
结果:弹出a
4.获取某个位置的字符的ASCII码值:str.charCodeAt( 5 )
例子:
var str = 'we are young';
alert(str.charCodeAt(5));
结果:101
5.将一个数值转换为字符,4的反例:String.fromCharCode( 101 )
例子:
var str = 'we are young';
alert(str.charCodeAt(5));
结果:101
alert(String.charCharCode(str.charCodeAt(5)));
结果:e
6.获取一个字符的位置: str.indexOf('s');
注意:
a.如果参数在字符串中出现两个或多个,那么只显示第一个字符的位置;
b.如果参数的字符值不存在,那么返回-1;
c.如果参数的字符值为字符串中两个连续的字符,那么只会弹出第一个字符的位置;
d.如果参数的字符值为字符串中两个不联系的字符,那么结果会返回-1;
例子:获取某个字符串中的所有的字符的位置
7.从右向左获取一个字符的位置: str.lastIndexOf('s',int);
注意:这个函数是从正序的位置开始,但从右往左找!
例子:
var str = 'abcdefg';
var pos = str.lastIndexOf('c',0);//返回-1,从a开始,从右往左找,找不到
var pos = str.lastIndexOf('c',3);//返回2,从d开始,从右往左找,可找到
var pos = str.lastIndexOf('c',2);//返回2,从c开始,从右往左找,可找到
8.截取一个字符串里的某段字符:str.substring('begin_num','end_num'); * 截取顺序
注意:
a.这个函数是截取从开始位置到结束位置。
b.如果开始位置的数值大于结束位置的数值,函数也是可以执行的。
例子b:
var str = 'abcdef';
alert(str.substring(6,3));
结果:def
分析:位置6不存在,位置3为d,那么结果就是从d到结束,故为def
特例:
A.(0,5) 从0到5
B.(5,0) 从0到5
C.(-2,5) 从0到5
9.截取某段字符(不能从右往左找):str.slice('begin_num','end_num'); * 截取顺序
注意:截取是取得是大于等于起始位置,小于结束位置的字符!
例子:
var str = '阿飞老师';
alert(str.substring(-2,3));
alert(str.slice(-2,3));
alert(str.slice(n,0)); //n>=1 结果:什么也找不到
结果:
第一个弹出:阿飞老 //起始位置-2不存在,所以,从位置0的‘阿’开始,截取位置3的‘师’的中间的字符
第二个弹出:老 //slice如果是起始位置是负数,那么是从右往左开始,比如-1位置就是‘师’,-2位置就是‘老’,而结束位置3则是又从左向右的字符‘师’,所以,结果就是‘老’,大于等于起始位置,小于结束位置.
特例:
A.(0,5) 从0到5
B.(5,0) 找不到
C.(-2,5)从倒数第二位,向正5的位置
10.将某个字符通过某个特殊的字符分裂成几段:str.split(';');
注意:分裂后 结果是数组!
11.将某个字符串的所有字符转换为大写:str.toUpperCase();
注意:只针对英文字符有效
12.将某个字符串的所有字符转换为小写:str.toLowerCase();
注意:只针对英文字符有效
例子:从一个字符串中获取所有的要查找的字符的位置
1.获取字符串的长度: str.length (只能读,不能写)
2.读取字符串里的单个字符: 可以将字符串看成一个数组,单个的字符看成数组的元素,操作如下:
var str='abcdef';
alert(str[0]); //弹出a
但是,这个也只能读,不能给其赋值,比如:
str[1] = 'z';
这个是不可以的。
注:可读,不可写
3.获取某个位置的字符: str.charAt( 5 )
例子:
var str = 'abc';
alert(str[0]);
结果:弹出a
4.获取某个位置的字符的ASCII码值:str.charCodeAt( 5 )
例子:
var str = 'we are young';
alert(str.charCodeAt(5));
结果:101
5.将一个数值转换为字符,4的反例:String.fromCharCode( 101 )
例子:
var str = 'we are young';
alert(str.charCodeAt(5));
结果:101
alert(String.charCharCode(str.charCodeAt(5)));
结果:e
6.获取一个字符的位置: str.indexOf('s');
注意:
a.如果参数在字符串中出现两个或多个,那么只显示第一个字符的位置;
b.如果参数的字符值不存在,那么返回-1;
c.如果参数的字符值为字符串中两个连续的字符,那么只会弹出第一个字符的位置;
d.如果参数的字符值为字符串中两个不联系的字符,那么结果会返回-1;
例子:获取某个字符串中的所有的字符的位置
7.从右向左获取一个字符的位置: str.lastIndexOf('s',int);
注意:这个函数是从正序的位置开始,但从右往左找!
例子:
var str = 'abcdefg';
var pos = str.lastIndexOf('c',0);//返回-1,从a开始,从右往左找,找不到
var pos = str.lastIndexOf('c',3);//返回2,从d开始,从右往左找,可找到
var pos = str.lastIndexOf('c',2);//返回2,从c开始,从右往左找,可找到
8.截取一个字符串里的某段字符:str.substring('begin_num','end_num'); * 截取顺序
注意:
a.这个函数是截取从开始位置到结束位置。
b.如果开始位置的数值大于结束位置的数值,函数也是可以执行的。
例子b:
var str = 'abcdef';
alert(str.substring(6,3));
结果:def
分析:位置6不存在,位置3为d,那么结果就是从d到结束,故为def
特例:
A.(0,5) 从0到5
B.(5,0) 从0到5
C.(-2,5) 从0到5
9.截取某段字符(不能从右往左找):str.slice('begin_num','end_num'); * 截取顺序
注意:截取是取得是大于等于起始位置,小于结束位置的字符!
例子:
var str = '阿飞老师';
alert(str.substring(-2,3));
alert(str.slice(-2,3));
alert(str.slice(n,0)); //n>=1 结果:什么也找不到
结果:
第一个弹出:阿飞老 //起始位置-2不存在,所以,从位置0的‘阿’开始,截取位置3的‘师’的中间的字符
第二个弹出:老 //slice如果是起始位置是负数,那么是从右往左开始,比如-1位置就是‘师’,-2位置就是‘老’,而结束位置3则是又从左向右的字符‘师’,所以,结果就是‘老’,大于等于起始位置,小于结束位置.
特例:
A.(0,5) 从0到5
B.(5,0) 找不到
C.(-2,5)从倒数第二位,向正5的位置
10.将某个字符通过某个特殊的字符分裂成几段:str.split(';');
注意:分裂后 结果是数组!
11.将某个字符串的所有字符转换为大写:str.toUpperCase();
注意:只针对英文字符有效
12.将某个字符串的所有字符转换为小写:str.toLowerCase();
注意:只针对英文字符有效
例子:从一个字符串中获取所有的要查找的字符的位置
获取字符串每个字符第一次出现的位置后几位
if(substr_count($goods_name,'-'))
{
$attr_value=substr($goods_name,-1);
}
else
{
$attr_value=1;
}