Javascript 正则使用笔记
# 一、如何创建正则表达式对象
# 1.通过RegExp构造函数来创建。i代表忽略大小写,g代表全局搜索(非全局搜索正则只匹配第一次符合的内容,全局搜索可以匹配多次)。
var reg = new RegExp('\d','i');
var reg = new RegExp('\d','gi');
# 2.通过"//"来创建正则表达式对象
var reg = /\d/gi; # 二、正则表达式对象,有哪些方法
# 1.RegExp.test() 匹配字符串是否符合正则表达式的规则,符合就返回真
var reg = /^\w+@\w+(\.\w+)+$/gi;
reg.test("chad@car.com.cn"); # 返回True
# 2.RegExp.exec() # 提取与正则表达式相匹配的子字符串
var str = "张三:2500,李四:3000,王五:50000";
var reg = /\w/g;# 如果不加g全局匹配的话,下面运行的返回值都是2500
reg.exec(str); # 返回2500
reg.exec(str); # 返回3000
reg.exec(str); # 返回5000
# 3.String.match()
# .普通提取
var str = "张三:2500,李四:3000,王五:50000";
var reg = /\w/g;
context = str.match(reg); # 返回的是["2500","3000","50000"]
# ..分组提取
var str = '12321@qq.com';
var reg = /((\w+)@(\w+)\.(\w+)(\.\w+)?)/g;
var arra = str.match(reg);
console.log(arra);
RegExp.$1; # 12321
RegExp.$2; # qq
RegExp.$3; # com
# 4.String.replace()
var str = ' asd asdas dasdas as ';
str.replace(/\s/g, '');# 去掉所有空格,包括中间空格
str.split(' ').join('')# 这样也能达到去掉所有空格的效果
# 5.String.split() 切割字符串 && String.join()数组拼接
var str = 'zs|ls|ww';
arr = str.split('|'); # 返回结果是["zs","ls","ww"]
var str = 'zs200ls400ww';
arr = str.split(/\d+/);# 返回结果是["zs","ls","ww"]
arr.join('|'); # 拼接后返回的结果是 'zs|ls|ww'
# 6.String.search() 字符串检索,返回匹配到的索引。没有匹配成功就返回-1.
var str = 'zs200ls400ww';
str.search(/\d+/); # 返回值为2
Javascript 正则使用笔记的更多相关文章
- JavaScript正则学习笔记
RegExp 元字符 ' . ' 点号:匹配任意的字符 ^ $ 位置字符 ^ 匹配字符串开始的位置 $ 匹配字符串结束的位置 匹配数字和非数字 \d 和 \D 匹配空白字符 \s 和 \S \s 匹配 ...
- javascript正则表达式 - 学习笔记
JavaScript 正则表达式 学习笔记 标签(空格分隔): 基础 JavaScript 正则表达式是用于匹配字符串中字符组合的模式.在javascript中,正则表达式也是对象.这些模式被用于Re ...
- JavaScript语言精粹笔记
JavaScript语言精粹笔记 掌握语言的每个特性可以让你出风头,但是并不推荐,因为一部分的特性带来的麻烦可能远超本身的价值.正如书中所言,坏的材料并不能雕刻出好的作品,要成为一名更好的程序员,要取 ...
- python 正则使用笔记
python正则使用笔记 def remove_br(content): """去除两边换行符""" content = content.r ...
- JavaScript正则实战
*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !impor ...
- 我也谈javascript正则匹配
一.javascript 正则全局匹配 g 慎用test()方法 来个例子: var a = /^[a-z]+/gi; a.test('bb123'); //true a.lastIndex ; // ...
- JavaScript看书笔记01
JavaScript看书笔记... ------------------- JavaScript允许var定义语句出现在函数内部的任意位置.JS中使用Var来显示的给变量声明 JavaScript是一 ...
- JavaScript正则表达式学习笔记(二) - 打怪升级
本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...
- 《你不知道的javascript》读书笔记2
概述 放假读完了<你不知道的javascript>上篇,学到了很多东西,记录下来,供以后开发时参考,相信对其他人也有用. 这篇笔记是这本书的下半部分,上半部分请见<你不知道的java ...
随机推荐
- 零基础学Java第一节(语法格式、数据类型)
本篇文章是<零基础学Java>专栏的第一篇文章,从本篇文章开始,将会连更本专栏,带领大家将Java基础知识彻底学懂,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! ...
- vue设计模式
vm 的设计模式. mvvm 是 model-view-viewModel 的简写. model 是数据模块,view 是渲染视图,viewModel 是沟通视图和数据模块的桥梁. vue 中使用了哪 ...
- v87.01 鸿蒙内核源码分析 (内核启动篇) | 从汇编到 main () | 百篇博客分析 OpenHarmony 源码
本篇关键词:内核重定位.MMU.SVC栈.热启动.内核映射表 内核汇编相关篇为: v74.01 鸿蒙内核源码分析(编码方式) | 机器指令是如何编码的 v75.03 鸿蒙内核源码分析(汇编基础) | ...
- DOM获取元素、修改元素
## DOM获取元素.修改元素### 1.DOM#### ①什么是DOM?作用? > DOM是文档对象模型 > 作用:操作网页内容,可以开发网页内容特效和实现用户交互.#### ②DOM对 ...
- 广义SAM
参考 还有首先你要会SAM吧~ 用途 相比与单串SAM,广义自动机能存储的是多个字符串. 有两种写法,第一种是离线利用trie树结构,第二种是在线伪广义SAM 离线+Trie 首先构建出trie树. ...
- 浅谈Javascript单线程和事件循环
单线程 Javascript 是单线程的,意味着不会有其他线程来竞争.为什么是单线程呢? 假设 Javascript 是多线程的,有两个线程,分别对同一个元素进行操作: function change ...
- JAVA - 线程同步和线程调度的相关方法
JAVA - 线程同步和线程调度的相关方法 wait():使一个线程处于等待(阻塞)状态,并且释放所持有的对象的锁:wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等 ...
- C语言:如何给全局变量起一个别名?
作 者:道哥,10+年嵌入式开发老兵,专注于:C/C++.嵌入式.Linux. 关注下方公众号,回复[书籍],获取 Linux.嵌入式领域经典书籍:回复[PDF],获取所有原创文章( PDF 格式). ...
- Git出现“filename too long”错误处理
更新记录 本文迁移自Panda666原博客,原发布时间:2021年5月8日. 怎么肥事? Windows系统下,在Git使用过程中,出现"filename too long"错误提 ...
- Linux安装Anaconda3完整教程
Linux安装Anaconda3完整教程 欢迎关注H寻梦人公众号 相关链接 官方安装Anaconda3教程 [手把手教你]如何在Linux系统搭建jupyter notebook CentOS8.2安 ...