【js 正则表达式】记录所有在js中使用正则表达式的情况
说实话,对正则表达式有些许的畏惧感,之前的每次只要碰到需要正则表达式去匹配的情况,都会刻意的躲过或者直接从度娘处获取。
此时此刻,感觉到了某一个特定的点去触及她。但笔者对于正则表达式使用上的理解是这样的,仅仅对她的发展历史和使用语法粗略的过了一遍,接下来就是一次一次的使用和记录下和她的每次邂逅。慢慢的,就能在心里勾勒出她最美的一面。
本篇仅记录正则表达式在js中的邂逅经历,如有读者想在其中窥探她的某种语法,直接搜索你想要实现的功能即可,例如【特定字符 多次匹配】之类的即可。
1.特定字符 全部匹配
需求:有下面这个字符串【"condition=userName=&age1=2017-06-07&age2=2017-06-14&height1=&height2=&weights1=&weights2=&uaValue1=&uaValue2=&uaphValue1=&uaphValue2="】,需要将字符串中【&】字符全部替换成【;】字符。
实现:
"condition=userName=&age1=2017-06-07&age2=2017-06-14&height1=&height2=&weights1=&weights2=&uaValue1=&uaValue2=&uaphValue1=&uaphValue2=".replace(/&/g,";");
结果:
"condition=userName=;age1=2017-06-07;age2=2017-06-14;height1=;height2=;weights1=;weights2=;uaValue1=;uaValue2=;uaphValue1=;uaphValue2="
说明:replace(正则,要替换为的字符串)
/正则/ ,前后两个斜杠代表js中正则表达式的前后边界
/&/,匹配单个字符&,如果直接使用在上面的情景,仅能替换 原始字符串中的第一个&符号为;,后面的&都不会变化
/&/g,可以匹配上原始字符串中所有的&
2.以匹配10-30位长度的纯数字子字符串为例
js正则表达式[RegExp]使用指南:http://www.runoob.com/js/js-regexp.html
注意:正则表达式的书写格式 是 /RegExp/参数 ,不用使用双引号括起来
//查找10-30位 纯数字出现的位置[效果:返回的是子字符串的起始位置]
"http://www.baidu.com/sc=1919191921&09923893909912".search(/\d{10,30}/ig)
str.search(RegExp)
//替换10-30位 纯数字为>>> [效果:是全局满足条件的子字符串都会进行替换]
"http://www.baidu.com/sc=1919191921&09923893909912".replace(/\d{10,30}/ig,">>>")
str.replace(RegExp)
//验证字符串中是否有符合正则表达式的子字符串存在[效果:存在10-30长度的纯数字,返回true]
/\d{10,30}/ig.test("http://www.baidu.com/sc=1919191921&09923893909912")
RegExp.test(str)
//返回第一个匹配上10-30长度的纯数字的子字符串[效果:返回是数组,是满足条件的子字符串和index的对象数组]
/\d{10,30}/ig.exec("http://www.baidu.com/sc=1919191921&09923893909912")
RegExp.exec(str)
//返回所有匹配上 10-30长度的纯数字的字符串[效果:返回是数组,是满足条件的子字符串的字符串数组]
"http://www.baidu.com/sc=1919191921&09923893909912".match(/\d{10,30}/ig)
str.match(RegExp)
3.js正则判断手机号
if (/^1(3|4|5|6|7|8|9)\d{9}$/.test(mobile)){
正确手机号!!
}else{
wx.showToast({
title: '请输入正确手机号',
icon: 'none',
image: '../../imgs/error.png',
duration: 2000
});
}
【js 正则表达式】记录所有在js中使用正则表达式的情况的更多相关文章
- 【java 正则表达式】记录所有在java中使用正则表达式的情况
本篇记录在java中邂逅正则表达式的所有美丽瞬间.因为在java和js中正则表达式的语法并不一致. 1.匹配字符串中有出现[2.1开头或者&2.1或者&3.1等的] Pattern m ...
- UltraEdit中使用正则表达式
正则表达式 (UltraEdit Syntax): % 匹配行首 - 表明要搜索的字符串一定在行首. $ 匹配行尾 - 表明要搜索的字符串一定在行尾 ? 匹配除换行符外的任一单个字符. * 匹配任意个 ...
- JavaScript中的正则表达式详解
摘要:javascript中的正则表达式作为相当重要的知识,本文将介绍正则表达式的相关知识和用法. 正则表达式(Regular Expression)是一门简单语言的语法规范,是强大.便捷.高效的文本 ...
- js中的正则表达式入门
什么是正则表达式呢? 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个字符串是否含有某种子串.将匹配的子串做替换或者从某个字符串中取出符合某个条件的子串等 ...
- JavaScript -- 时光流逝(六):js中的正则表达式 -- RegExp 对象
JavaScript -- 知识点回顾篇(六):js中的正则表达式 -- RegExp 对象 1. js正则表达式匹配字符之含义 查找以八进制数 规定的字符. 查找以十六进制数 规定 ...
- JS中应用正则表达式转换大小写
JS中应用正则表达式转换大小写,代码很简单,看代码: 以下首字母大写,其它字母小写 <script type="text/javascript"> function r ...
- 如何在JS中应用正则表达式
背景:在之前的随笔中写过C#中如何使用正则表达式,这篇随笔主要讲如何在js中应用正则表达式 如下代码: $("#zhengze").click(function () { var ...
- 浅谈js中的正则表达式
很多时候多会被正则表达式搞的晕头转向,最近抽出时间对正则表达式进行了系统的学习,整理如下: 正则表达式的创建 两种方法,一种是直接写,由包含在斜杠之间的模式组成:另一种是调用RegExp对象的构造函数 ...
- js 键盘记录实现(兼容FireFox和IE)(转)
主要分四个部分 第一部分:浏览器的按键事件 第二部分:兼容浏览器 第三部分:代码实现和优化 第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型,即keydo ...
- D3.js学习记录【转】【新】
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- windows下mysql 5.7的配置全过程
这是一套在好多次的安装下总结出来的经验,包括很多种遇到的问题,查过很多资料,特此总结一下. 一.从官网下载MySQL的zip(免安装的) 解压mysql-5.7.11-winx64.zip到自己指定的 ...
- 「6月雅礼集训 2017 Day2」B
[题目大意] 求n*n的棋盘,每行每列都有2个黑格子的方案数. n<=10^7 [题解] zzq的做法好神奇啊 行列建点,二分图 左边有i个点,右边有j个点的方案数 f[i,j] 左边有i个点, ...
- ILSPY反编译工具下载代替收费的Reflector工具
原文发布时间为:2011-10-10 -- 来源于本人的百度文章 [由搬家工具导入] ILSPY反编译工具下载 http://build.sharpdevelop.net/BuildArtefacts ...
- 使用pandas进行数据清洗
本文转载自:蓝鲸的网站分析笔记 原文链接:使用python进行数据清洗 目录: 数据表中的重复值 duplicated() drop_duplicated() 数据表中的空值/缺失值 isnull() ...
- wait(),sleep(),notify(),join()
wait()注意以下几点: 1)wait()是属于Object类的方法. 2)调用了wait()之后会引起当前线程处于等待状态. 3)将当前线程置入“预执行队列”中,并且在wait()所在的代码行处停 ...
- Spring MVC的静态和动态概念
MVC模式: 图释:用户请求通过HTTP协议到达Front controller,Front controller把请求送给Controller,Controller了解业务逻辑细节并且调用业务逻辑数 ...
- [ Centos 7 iscsi搭建 及 1台客户端同时挂载多台iscsi服务端问题 ]
一.什么是iscsi iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千 ...
- BZOJ 3098
: Hash Killer II 时间限制: Sec 内存限制: MBSec Special Judge 提交: 解决: [提交][][] 题目描述 这天天气不错,hzhwcmhf神犇给VFleaKi ...
- python与鸭子类型
部分参考来源:作者:JasonDing https://www.jianshu.com/p/650485b78d11##s1 首先介绍下面向对象(OOP)的三大特征: (1)面向对象程序设计有三大特 ...
- Web.config中appSettings节点值两种读取方法
<appSettings> <add key="ClientPort" value="5252"/> <add ...