当前位置:网站首页>js中的正则表达式
js中的正则表达式
2022-06-12 08:09:00 【李大大大哥】
1,概念
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。
搜索模式可用于文本搜索和文本替换。
2.什么是正则表达式
正则表达式是由一个字符序列形成的搜索模式
当在文本中搜索数据时,可以用搜索模式来描述你要查询的内容
正则表达式可以用于所有文本搜索和文本替换的操作
3.语法:
var 变量 = new RegExp("正则表达式","匹配模式");
匹配模式还可作为第二个参数
i:忽略大小写
g:为全局匹配
使用|表示或的意思
使用字面量创建正则表达式:
语法 var 变量 = /正则表达式/匹配模式
例如:
var reg = new REgExp("a");
reg = /a/i;
实例解析:
/runoob/i 是一个正则表达式。
runoob 是一个正则表达式主体 (用于检索)。
i 是一个修饰符 (搜索不区分大小写)。
中括号:
4.支持正则表达式的 String 对象的方法
split();
- 可以将任意字符拆分为一个数组
- 方法中可以传递一个正则表达式作为参数,这样方法会根据正则表达式去拆分字符
- 不指定全局,也会全局修改

search()和replace()方法
在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。
search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置,如果没有搜索到则会返回-1。只会查找第一个,设置全局也没有用
replace() 方法用于在字符串中用一些字符串替换另一些字符串,或替换一个与正则表达式匹配的子串。
var str = 'asdfasjsjasA';
result = str.replace(/a/gi,"@[email protected]");
注意:
正则表达式参数可用在以上方法中 (替代字符串参数)。
正则表达式使得搜索功能更加强大(如实例中不区分大小写)。
使用 test()
test() 方法是一个正则表达式方法。
var result = reg.text('asffga');
-- 只要个字符串里有a返回的就是true,严格区分大小写
test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
会将匹配的内容封装到一个数组中返回,即只查询到一个结果
实例
全局查找字符串 "ain",且不区分大小写:
var str="The rain in SPAIN stays mainly in the plain";
var n=str.match(/ain/gi);
5.量词:

6.子元符
如果想用\转义字符。
使用构造函数时,由于它的参数时一个字符,而\是字符串中的转义字符,
如果要使用\则要用\来代替
去除开头和结尾的空格留下中间的空格:
str = str.replace(/^\s*|\s$/g,"")
边栏推荐
- Alibaba cloud deploys VMware and reports an error
- Servlet advanced
- The computer is connected to WiFi but can't connect to the Internet
- 2.2 linked list - Design linked list (leetcode 707)
- Vscode 调试TS
- visual studio2019的asp.net项目添加日志功能
- MES系统质量追溯功能,到底在追什么?
- CMAKE 里PRIVATE、PUBLIC、INTERFACE属性示例详解
- (P15-P16)对模板右尖括号的优化、函数模板的默认模板参数
- Clarify the division of IPv4 addresses
猜你喜欢

Explanation and explanation on the situation that the volume GPU util (GPU utilization) is very low and the memory ueage (memory occupation) is very high during the training of pytoch

HDLC protocol

Vscode的Katex问题:ParseError: KaTeX Parse Error: Can‘t Use Function ‘$‘ In Math Mode At Position ...

Cookies and sessions

"Three.js" auxiliary coordinate axis

FPGA to flip video up and down (SRAM is61wv102416bll)

Py&GO编程技巧篇:逻辑控制避免if else

Detailed explanation of Google open source sfmlearner paper combining in-depth learning slam -unsupervised learning of depth and ego motion from video

Pytorch practice: predicting article reading based on pytorch

从AC5到AC6转型之路(1)——补救和准备
随机推荐
记录谷粒商城踩坑(一)
JSP technology
从AC5到AC6转型之路(1)——补救和准备
Cmake can't find the solution of sophus
Ceres optimizer usage (self use)
建立MES系统,需要注意什么?能给企业带来什么好处?
千万别把MES只当做工具,不然会错过最重要的东西
(P27-P32)可调用对象、可调用对象包装器、可调用对象绑定器
Mathematical knowledge - matrix - matrix / vector derivation
(P40-P41)move资源的转移、forward完美转发
Pytorch profiler with tensorboard.
How to write simple music program with MATLAB
C # push box
制造企业生产排产现状和APS系统的解决方案
Clarify the division of IPv4 addresses
uni-app用canvas截屏并且分享好友
(P13)final关键字的使用
visual studio2019的asp.net项目添加日志功能
牛客网的项目梳理
Compiling principle on computer -- functional drawing language (IV): semantic analyzer