一、查找字符串的字符串

a:indexOf:没有查询到返回值为-1;

b:lastIndexoOf:查找到的为重复的最后一个;

c:search 查找;

var str="good good study";
//a:
console.log(str.indexOf("study")); //10
//b:
console.log(str.lastIndexOf("good"); //5
//c:
console.log(str.search("study"));

二、提取部分字符串

方法 参数 参数为一个 参数都为正 参数为负 
slice

接收的是起始位置和结束

位置(不包括结束位置)

省略结束位置参数,从参数位置开始截取

到字符串结束,负参数从左开始往右截取

起始位置大于结束位置,

返回空

参数都为负:

从负参数开始截取到负参数结束(起始位置<结束位置)

(起始位置>结束位置)//报错

开始为正,结束为负:

从正参数开始截取到负参数结束

开始为负,结束为正:返回为空

substring 参数中有负值,将其转化成0。两个参数中较小的一个作为起始位置。
substr

接收的是起始位置和所要

返回的字符串长度

和slice一样  

返回字符串长度不能为负值(没有意义)。

如果参数为负,相当于截取字符串长度为0.

a:slice  console.log(str.slice(5,2))

b:substring(取负参从零开始)  console.log(str.substring(3,7));

c:substr(规定长度)  console.log(str.substr(3,7));

三、替换字符串内容

格式:replace("旧的字符串","新字符串")

var str="good good study";
var res=str.replace("good","day");
console.log(res);
console.log(str); //返回原字符串不受影响四

四、正则表达式匹配

var str="good good study";
var res=str.replace(/Good/i,"day");

  注:"/ /i"(单独替换) → 对大小写不敏感,忽略大小写。

    "/ /g" (全局替换) → 全局替换

五、字母转换大小写

console.log(str.toUpperCase());//全部转化大写
console.log(str.toLowerCase());//全部转化小写 

六、连接两个或多个字符串(concat)

var one="hello";
var two="world";
var three="!!!"
var x=one.concat("+","abc",three);
console.log(x) 

七、删除字符串两端的空白符trim()

var str = "       Hello World!        ";
console.log(str.trim());
//去左空格;
function ltrim(s){
return s.replace(/(^\s*)/g,"");
}
//去右空格;
function rtrim(s){
return s.replace(/(\s*$)/g,"");
}  

八、提取字符串字符charAt(0)

var str = "HELLO WORLD";
console.log(str.charAt(0));

九、返回字符串中指定索引的字符 unicode 编码

var str = "HELLO WORLD";
console.log(str.charCodeAt(0));  

十、把字符串转换为数组split()

var txt = "at,b,cpp,d,e";   // 字符串
var test=txt.split(","); // 用逗号分隔
var test1=txt.split(" "); // 用空格分隔
var test2=txt.split("|"); // 用竖线分隔
console.log(test1);

  

练习:

//查找字符串中有多少个e
var str="there is no challess there will be no success";
var sum=0;
for(var i=0;i<str.length;i++){
if(str.charAt(i)=="e"){sum+=1};
}
console.log(sum)
 //正则表达式查找有多少个e
var str="there is no challess there will be no success";
var res=str.match(/e/g);
console.log(res.length);
 

js-06-字符串的更多相关文章

  1. JS判断字符串长度的5个方法

    这篇文章主要介绍了JS判断字符串长度的5个方法,并且区分中文和英文,需要的朋友可以参考下 目的:计算字符串长度(英文占1个字符,中文汉字占2个字符)   方法一:    代码如下: String.pr ...

  2. 怎么用JS截取字符串中第一个和第二个字母间的部分?

    一.JS中用正则判断字符串是否有匹配正则的字符串部分,格式如下: /[a-zA-Z](.*?)[a-zA-Z]/.test('1a123d45678901a2') “.test”前面的部分是正则表达式 ...

  3. js对字符串的操作

    js对字符串的操作 concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串. indexOf() – 返回字符串中一个子串第一处出现的索引.如果没有匹配项,返回 -1 . charA ...

  4. js替换字符串的所有示例代码

    js如何替换字符串中所有. /** * 替换字符串中所有 * @param obj 原字符串 * @param str1 替换规则 * @param str2 替换成什么 * @return 替换后的 ...

  5. Js判断对象是否为空,Js判断字符串是否为空

    Js判断对象是否为空,Js判断字符串是否为空,JS检查字符串是否为空字符串 >>>>>>>>>>>>>>>&g ...

  6. js移除最后一个字符,js替换字符串的连接符号,js移除最后一个分隔符号

    js移除最后一个字符 js移除最后一个分隔符号 js替换字符串的连接符号 >>>>>>>>>>>>>>>> ...

  7. js截取字符串区分汉字字母代码

    js截取字符串并且区分汉字字母,一个汉字辨别为两个字节. function substr(str, len) { if (!str || !len) { return ''; } // 预期计数:中文 ...

  8. 小议 js 下字符串比较大小

    原文:小议 js 下字符串比较大小 之前群里有人问如何比较两个时间大小,他的时间格式是 2014-08-08 而不是 2014-8-8.所以我给的方法是 直接比较,如: var a = "2 ...

  9. js中字符串转换为数值的两种方法的区别

    在js中字符串转换为数值的方法有三种:转换函数,强制类型转换,隐式转换 1.转换函数 parseInt()   //将字符串转换为整型 parseFloat()  //将字符串转换为浮点型 转换函数在 ...

  10. js判断字符串是否全为空(使用trim函数/正则表达式)

    我们需要判断用户输入的是否全是空格,可以使用以下方法: 方法一: 使用trim() /* 使用String.trim()函数,来判断字符串是否全为空*/ function kongge1(test) ...

随机推荐

  1. luogu P4462 [CQOI2018]异或序列 |莫队

    题目描述 已知一个长度为n的整数数列a1,a2,...,an,给定查询参数l.r,问在al,al+1,...,ar​区间内,有多少子序列满足异或和等于k.也就是说,对于所有的x,y (I ≤ x ≤ ...

  2. Chrome DevTools开发者工具调试

    1-1 Chrome DevTools 功能简介 (九大功能面板) (1)Elements元素面板 检查和调整页面,调试DOM,调试CSS (2)Network网络面板 调试请求,了解页面静态资源分布 ...

  3. P4072 [SDOI2016](BZOJ4518) 征途 [斜率优化DP]

    题目描述 Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜.所以,一段路 ...

  4. BZOJ2440完全平方数(莫比乌斯反演)

    Description 小 X 自幼就很喜欢数.但奇怪的是,他十分讨厌完全平方数.他觉得这些数看起来很令人难受.由此,他也讨厌所有是完全平方数的正整数倍的数.然而这丝毫不影响他对其他数的热爱. 这天是 ...

  5. ZOJ2770-Burn The Linked Camp(火烧连营Orz 差分约束-线性约束+最长路(OR反向最短路))

    It is well known that, in the period of The Three Empires, Liu Bei, the emperor of the Shu Empire, w ...

  6. usb2.0高速视频采集之68013A寄存器配置说明

    任何的固件编程离不开与与原理图参考,图纸中所采用的是USB的Slave_fifo传输方式,具体配置与图纸对应即可. •USB_IFCLK:同步Slave_FIFO模式,输入频率范围5M-48M,在FP ...

  7. 测底稳定NIOS开发之一:将nios产生的编程文件转换成jic (连载)

    将nios产生的编程文件转换成jic 前言: 基于某种原因,自从开始fpga开发和nios项目开发中,均为正常使用EDS IDE自带的flash programmer 进行成功的下载固化epcs程序. ...

  8. 从FPGA搞定OV7670 VGA显示 移植到 STM32F10x TFT显示 总结及疑问(高手请进)

    OV7670不愧是最便宜的摄像头了最大显示像素:640*480(在VGA显示器上显示效果还不赖,用usb模块采集显示依然显著) 第一步:VGA显示 视频图像(实时)FPGA+SDRAM+OV7670= ...

  9. css3(2)

    旋转: 2D:transform: rotate()——进行旋转,括号内部写旋转角度,默认顺时针旋转.允许负值,元素将进行逆时针旋转, translate()——从当前位置进行移动,括号内为x,y值. ...

  10. layim手机版嵌入app

    感觉记忆力不行了,才做了就有点忘了.先简单做下记录... 遇到的问题 需要类似微信的语音发送功能 前端发送给后端,在mogodb中用二进制存储.后端取到数据发送给我的也是blob.前端拿到数据就变了. ...