正则表达式中的match,test,exec,search的返回值
今天突然被问到了正则表达式,因为长时间不用突然不知道怎么用了,只知道有这么个东西。然后去网上查了一下,感觉写的不少,但解释的有点模糊,今天我来浅谈一下。
1,match的用法
A,在不加全局“g”的情况下:
var str="wo shi zhong guo ren";
console.log(str.match(/o/));
返回的结果是:["o", index: 1, input: "wo shi zhong guo ren"];
A,在加全局“g”的情况下:
var str="wo shi zhong guo ren";
console.log(str.match(/o/g));
返回的结果是:["o", "o", "o"];
2,exec的用法
var str="wo shi zhong guo ren";
var re=/o/;
console.log(re.exec(str));
返回的结果是:["o", index: 1, input: "wo shi zhong guo ren"];
在这里我想大家可以看到了exec返回的不是和match不加全局“g”’一样吗?你答对了。
3,test的用法
var str="wo shi zhong guo ren";
var re=/o/;
console.log(re.test(str));
返回的结果是:true(如果找不到返回的则是false);
4,search的用法
关于search用法其实很简单,它和indexOf是一样的,就是找到index,而且是从前往后数的。
var str="wo shi zhong guo ren";
var re=/o/;
console.log(str.search(re));
返回的结果是:1;
正则表达式中的match,test,exec,search的返回值的更多相关文章
- javascript中正则表达式中的 match,exec,test,replace 之我理解
这个正则 ($&) 的语法: https://msdn.microsoft.com/library/3k9c4a32(v=vs.94).aspx 在ECMAScript中对这几个的说明: ma ...
- C#中的函数(二) 有参有返回值的函数
接上一篇 C#中的函数(-) 无参无返回值的函数 http://www.cnblogs.com/fzxiaoyi/p/8502613.html 这次研究下C#中的函数(二) 有参有返回值的函数 依然写 ...
- js字符串和正则表达式中的match、replace、exec等函数详解
正则并不是经常使用,而正则和字符串之间的函数关系又错综复杂,谁是谁的函数,又是怎么样的一种结果,往往我们是看一遍忘一遍,对此我是头疼不已,感觉自己是个笨蛋^_^. 为了以后不再查文档,特此把常用的函数 ...
- js字符串和正则表达式中的match、replace、exec等的配合使用
正则并不是经常使用,而正则和字符串之间的函数关系又错综复杂,谁是谁的函数,又是怎么样的一种结果,往往我们是看一遍忘一遍,对此我是头疼不已,感觉自己是个笨蛋^_^. 为了以后不再查文档,特此把常用的函数 ...
- 全面解析JS字符串和正则表达式中的match、replace、exec等函数
转自:https://www.jb51.net/article/87730.htm 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将 ...
- 正则表达式中test,match,exec区别
testtest 返回 Boolean,查找对应的字符串中是否存在模式.var str = "1a1b1c";var reg = new RegExp("1." ...
- JavaScript中的match方法和search方法
search在一个字串对象(string object)中查找关键词字串(规范表达式,regular expression),若匹配(即在目标字串中成功找到关键词)则返回关键词在目标字串中第一次出现的 ...
- GCC:条件判断中赋值语句和函数结尾时无返回值的警告
有下面非常经典的一个字符串复制程序. test1.c #include <stdio.h> int main() { char str_t[]="This String come ...
- python中的函数(定义、多个返回值、默认参数、参数组)
函数定义 在python中函数的定义以及调用如下代码所示: def test(x): y = x+1 return y result = test(2) print(result) 多个返回值的情况 ...
- ConcurrentHashMap中的putIfAbsent方法的使用以及返回值的含义
public V putIfAbsent(@NotNull K key, @NotNull V value) putIfAbsent方法主要是在向ConcurrentHashMap中添加键—值对的时候 ...
随机推荐
- C#-WebForm-AJAX阿贾克斯(一)基本格式
AJAX 即" Asynchronous Javascript And XML "(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异 ...
- IOS 股票K线图、分时图
IOS 股票K线图.分时图,网上开源项目很少,质量也是参差不齐:偶尔搜索到看似有希望的文章,点进去,还是个标题党:深受毒害.经过一段时间的探索,终于在开源基础上完成了自己的股票K线图.分时图: 先放出 ...
- Run Loop简介
做了一年多的IOS开发,对IOS和Objective-C深层次的了解还十分有限,大多还停留在会用API的级别,这是件挺可悲的事情.想学好一门语言还是需要深层次的了解它,这样才能在使用的时候得心应手,出 ...
- 编译Uboot时提示error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
在Ubuntu14.04 64位系统中已经安装了libc6:i386的库,编译Uboot时提示error while loading shared libraries: libz.so.1: cann ...
- scrapy bug
Issue one describle: scrapy No module named mail.smtp solution:sudo apt-get install python-twisted
- 12.TCP的成块数据流
1.滑动窗口协议 TCP滑动窗口的可视化表示 我们将字节从1到11进行标号,接收方通告的窗口称为提供的窗口,它覆盖了第4字节到第9字节的数据,且通告窗口大小为6.发 ...
- spark transform操作卡死,请先对rdd进行action操作
这两天一直在写spark程序,遇到了一个奇怪的问题. 问题简单描述如下,有两个RDD,设为rdd_a,rdd_b,当将这两个rdd合并的时候,spark会在运行中卡死. 解决方式也是奇葩. 只要在合并 ...
- Arcgis js API使用wmts方式加载GeoWebCache中的切片地图(转载)
使用GeoWebCache的主要目的是其独立安装版能够发布arcgis的切片.我们知道,使用openlayer是调用geoserver最方便的方法,那么在发布完arcgis的切片后,怎么用arcgis ...
- 如何在windows下载和安装Apache
进入apache服务器官网http://httpd.apache.org/,这里我们以下载稳定版的httpd 2.4.25为例,点击"Files for Microsoft Windows& ...
- C-Sharp网络编程案例解析(Socket类的使用)
Server端: using System; using System.Collections.Generic; using System.Text; using System.Net; using ...