#JS Regex正则表达式的使用
字符串带的正则表达式相关的方法
1.search()
搜索符合指定正则表达式在目标字符串中的位置
str.search('hello'); //str字符串中查找search字符串,成功返回位置,否则返回-1
str.search(/hello/); //str中查找符合正则表达式/hello/的字符串位置
str.search(/hello/g); //全局
str.search(/hellO/i); //忽略大小写
str.search(/hellO/m); //多行匹配
2.match()
搜索指定正则表达式在目标字符串中的字符串,返回的不仅仅是位置
str.match("hello"); //匹配成功返回一个位置信息的数组
str.match("Hello"); //匹配没成功,返回null
str.match(\HELLO\i); //不区分大小写
3.replace()
str.replace(“world”,”jack”); //查找str中的world,并替换成jack,返回的是替换后的字符串
str.replace(/world/,”jack”); //同上
4.split()
根据正则表达式去分割相应的字符串,输入字符串,输出数组
console.log(str.split(" ")); 以空格为分隔符分割str字符串,返回数组
5.join()
数组合并成字符串
arrdata.join(","); 合并arrdata,并用,连接
RegExp对象的方法
1.test()
和search的作用差不多,只不过使用的方法是相反的,并且返回的是yes或no
/hello/.test(str); 有的话返回true,无的话返回false
2.exec()
和math的作用差不多,使用相反,效果一样
/hello/.exec(str);在str中查找匹配/hello/的字符串,有的话返回对应的结果和index等信息,没有的话返回null
模式匹配
带方括号的[], ——– 范围
[abc]: 查找在方括号中的任意一个字符;
[^abc]: 查找不在方括号中的任意一个字符;
[0-9][a-z]: 查找0-9中的任意一个数字加[a-z]中的任一字符的组合
原字符 ——– 大范围
. 任意单个字符(略略略,点点点)
\w 字母数字下划线((word)低调的小写)
\W 和\w是相反的(傲慢与偏见的大写)
\d 数字((digit)低调的小写)
\D 非数字(傲慢也偏见的大写)
\s 空格(spache)
\S 傲慢的大S
高级匹配 ——– 修饰符
n* n的个数大于等于0
n? n的个数大于等于0小于等于1
n+ n的个数大于等于1
n{233} n的个数等于233的字符串
n{1,233} n的个数大于等于1,小雨等于233的字符串
n{1,} n的格个数大于等于1
n$ 匹配以n结尾的字符串
^n 匹配以n开头的字符串
贪婪模式 —— (高级模式后面加?即可)
常用正则表达式
手机号: /(^1[3|4|5|7|8][0-9]{9}$)/
ip地址:/\d+\.\d+\.\d+\.\d+/g
域名:/http:\/\/[\w|.]+\w+/g
手机号码:/1[3|4|5|6|7|8][\d]{9}/g
匹配汉字:/[\u4e00-\u9fa5]/g
匹配邮箱:/\w{1,16}@\w{1,16}\.\w{1,8}/g
备注
/g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个。如果不加/g最多只会匹配一个
/i 表示匹配的时候不区分大小写
/m 表示多行匹配,什么是多行匹配呢?就是匹配换行符两端的潜在匹配。影响正则中的^$符号
#JS Regex正则表达式的使用的更多相关文章
- JS常用正则表达式备忘录
摘要: 玩转正则表达式. 原文:JS常用正则表达式备忘录 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 正则表达式或"regex"用于匹配字符串的各个部分 下面是 ...
- JS使用正则表达式获取小括号、中括号及花括号内容的方法示例
本文实例讲述了JS使用正则表达式获取小括号.中括号及花括号内容的方法.分享给大家供大家参考,具体如下: JS 正则表达式 获取小括号 中括号 花括号内的内容 <!DOCTYPE html> ...
- 转:C++ Boost/tr1 Regex(正则表达式)快速指南
C++ Boost/tr1 Regex(正则表达式)快速指南 正则表达式自Boost 1.18推出,目前已经成为C++11(tr1)的标准部分. 本文以Boost 1.39正则表达式为基础,应该广泛适 ...
- js常用正则表达式2
字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界. -或- 对 ...
- js之正则表达式(上)
1.正则表达式的创建方式 两种方式创建:通过new修饰符创建和字面量的方式创建 1>new修饰符方式创建 var b2=new RegExp('Box','ig'); //第二个参数是 模式字符 ...
- Js用正则表达式验证字符串
js 常用正则表达式表单验证代码 作者: 字体:[增加 减小] 类型:转载 js 常用正则表达式表单验证代码,以后大家就可以直接使用了. 正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模 ...
- AngularJS进阶(十三)JS利用正则表达式校验手机号
JS利用正则表达式校验手机号 注:请点击此处进行充电! 绪 由于项目需求,需要在前端实现手机号码的校验.当然了,对于基本的格式校验应该放在客户端进行,而不需要再将待校验的手机号发送至服务端,在服务端完 ...
- JS的正则表达式及回文
function palindrome(str) { str = str.replace(/\s/g,"").replace(/[^a-zA-Z0-9]/g,"" ...
- js regex variable & Set, Map
js regex variable & Set, Map regex, variable, Set, Map, 交集, 差集, 并集, https://stackoverflow.com/qu ...
随机推荐
- python 文件路径问题
需要用到 os 模块和 sys 模块 import os print(__file__)# 输出相对路径 print(os.path.abspath(__file__)) #输出绝对路径 # D:\P ...
- Tomcat权威指南-读书摘要系列2
2. 配置Tomcat 2.1. 重定向Web应用程序的目录 将工程文件与Tomcat分离 复制conf和webapps文件夹到分离目录: 配置CATALINA_BASE环境变量,值为分离目录: 2. ...
- Windows下配置Nginx+php7
第一部分:准备工作 第二部分:安装nginx 第三部分:安装php(这里主要讲nginx配置启动php,以cgi运行php)nginx配置文件是conf文件夹里的nginx.conf 在这里,我简单说 ...
- Web API: Client: Call a Web API from a .net client
原文地址: http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client 翻译地址:h ...
- Metrics.Net实践(2)在WEB中应用度量
Gauges 可以画出Http Request执行时间的波形图: actionInfo表示MVC中的Action,即按照action类型来分组 Metric.Context(this.actionIn ...
- centos7 源码构建、安装dubbo-monitor
按照官方文档 ,发现dubbo-monitor-simple-x.x.x-assembly.tar.gz 下载不下来(地址访问不了),那么就自己下载源码构建吧. 我的zookeeper,hadoop ...
- HDU 4707 Pet 邻接表实现
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4707 解题报告:题目大意是在无向图G中有n个点,分别从0 到n-1编号,然后在这些点之间有n-1条边, ...
- 关于getsockname()/getpeername()函数第一次被调用得到0.0.0.0结果的说明
最近阅读UNIX网络编程第四章时,书本末尾介绍了两个函数getsockname()和getpeername(),可以用于获取服务器端和客户端的IP地址与端口,原本很简单的两个函数,过一眼即明白函数的用 ...
- 洛谷 P3307: bzoj 3202: [SDOI2013] 项链
题目传送门:洛谷P3307.这题在bzoj上是权限题. 题意简述: 这题分为两个部分: ① 有一些珠子,每个珠子可以看成一个无序三元组.三元组要满足三个数都在$1$到$m$之间,并且三个数互质,两个珠 ...
- 【FCS NOI2018】福建省冬摸鱼笔记 day1
省冬的第一天. 带了本子,笔,一本<算法导论>就去了.惊讶于为什么同学不带本子记笔记. 他们说:“都学过了.”,果然这才是巨神吧. 第一天:数论,讲师:zzx 前几页的课件挺水,瞎记了点笔 ...