最近经常会用到前端处理字符的问题,现在记录一下关于用javascript对字符处理的操作。
前景:
有两个简单字符字义,如下:
var str1 = "abcdefghijklmn"; var str2 = "0123456789";
1、判断str1字符中是否包含"hello"和"ghi"
if(str1.indexOf("hello") != -1){ return true;} else return false;
很显然,结果是false。因为字符str1中并不包含字符hello。
同理:
if(str1.indexOf("ghi") != -1){ return true;} else return false;
返回的是true。
2、分别截取str1和str2中的字符"efgh"、"345"
方法:
1、
//截取在原字符中的坐标,前后参数均为坐标值。
str1.substring(4,7);输出:efgh str2.substring(4,6);输出:345
2、
//截取时,第一参数为坐标,第二参数为长度。 str1.substr(4,4);输出:efgh str2.substr(4,3);输出:345
3、替换字符为空或其它字符
方法:
str1.replace("efgh", "");
如果需要全部替换,则加"/g"
str1.replace("efgh"/g, "");
另外,参数1也可以是正则,如果熟悉的话,会比较好用。参数2可以是函数:
str2.replace("345", function(w) { "$" + w.substring(0,1) + "-" + w.substring(1); });
这时的输出结果是:012$3-456789。也就是说上例中的w是"345"