位置: 编程技术 - 正文

javascript正则表达式定义(语法)总结(js正则 \w)

编辑:rootadmin

推荐整理分享javascript正则表达式定义(语法)总结(js正则 \w),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js正则表达式写法,js正则用法,javascript 正则,javascript 正则,js正则表达式写法,js正则表达式写法,javascript正则表单验证,javascript 正则,内容如对您有帮助,希望把文章链接给更多的朋友!

本文讲述了javascript正则表达式定义(语法)。分享给大家供大家参考,具体如下:

正则表达式的2种定义方法:一种是直接调用RegExp(),第二种是直接用字面量来定义,即var re = /正则规则/;

2种定义方法本质都是调用RegExp()方法

在调用同一段正则代码的时候,ECMAScript3和ECMAScript5中表现完全不一样

分别在ECMAScript3和ECMAScript5中调用reg()方法多次

在ECMAScript3中,调用的是同一个RegExp对象,在ECMAScript5中,调用的是不同的RegExp对象 因为在EXCMAScript5中每执行一次,就生成一个新的RegExp对象

所以在ECMAScript3中会造成程序的隐患,因为只要在一个地方对这个对象进行修改的话,所有调用到这个对象的地方都会变化。

1.直接量字符

在正则中一般都会直接匹配字符,如

/javascript/会直接匹配字符javascript

还支持非字母的字符匹配,如:

o NUL字符(u)

t 制表符(u)

n 换行符(uA)

v 垂直制表符(uB)

f 换页符(uC)

r 回车符(uD)

xnn 由十六进制数nn指定的拉丁字符,例如,x0A等价于n

uxxxx 由十六进制数xxxx指定的Unicode字符,例如u等价于t

cX 控制字符^X,例如,cJ等价于换行符n

在正则表达式中,还有一些有特殊含义的标点符号,他们需要''来转义

^$.*+&#;=!:|/()[]{}

2.字符类

[...] 方括号内的任意字符

[^...] 不在方括号内的任意字符

. 任意字符

w 任何ASCII字符组成的单词,等价于[a-zA-Z0-9]

W 任何不适ASCII字符组成的单词,等价于[^a-zA-Z0-9]

s 任何Unicode空白符

S 任何非Unicode空白符的字符,注意w和S不一样

d 任何ASCII数值,等价于[0-9]

javascript正则表达式定义(语法)总结(js正则 \w)

D 除了ASCII数字之外的任何字符,等价于[^0-9]

[b] 退格直接量(特例)

3.重复(次数)

&#; 0或1次

+ 1次或多次

* 任意次

{n} n次

{m,n} 最少m次,最多n次

{n,} n次或n次以上

正则默认是贪婪匹配的

如[a+b+] 如果要匹配aaabb,它不会匹配ab和aab等,只会匹配aaabb

[a+&#;b+&#;] 这个会匹配aaab 为什么会产生这个区别呢?

答:+&#;是让正则非贪婪匹配,那么b这里只会匹配一个b,那为什么a会匹配3个呢?这是因为正则表达式的模式匹配总是会寻找字符串中第一个可能匹配的位置。

4.选项|分组|引用

| 用于分隔可供选择的字符,如[ab|cd],他既可以匹配ab也可以匹配cd,注意:选择项的尝试匹配次序是左→右,因此[a|ab],当a匹配通过了之后,就不匹配ab了,就算ab是更好的匹配

() 1.单独的项当成子表达式 /java(script)&#;/ 可以匹配javascript和java 即圆括号部分形成子的表达式,可以对子表达式执行| * &#;等操作

2.完整的模式中定义子模式 后面的可以引用前面圆括号起来的表达式 /(['"])[a-z]1/ 1引用的是第一个圆括号里的表达式,因此引用了['"]

3.后部引用前面的子表达式 注意: /['"][a-z]['"]/这个正则的意思是 单引号或双引号加上一个小写字母加上一个单引号或者双引号,前后的单双引号不是匹配的如果你要匹配可以这么写[(['"])[a-z]1]

加数字 可以引用前面圆括号中的表达式

5.制定匹配位置(锚点)

^ 匹配字符串的开头,在多行检索中,匹配一行的开头

$ 匹配字符串的结尾,在多行检索中,匹配一行的结尾

b 匹配一个单词的边界,简言之,就是位于字符w和W之间的位置,或位于字符w和字符串的开头或者结尾之间的位置

B 匹配非单词边界的位置

(&#;=p) 零宽正向先行断言,要求接下来的字符都与p匹配,但不能包括匹配p的那些字符

(&#;!p) 零宽负向先行断言,要求接下来的字符不与p匹配

6.修饰符

写在正则表达式字面量//右侧的

i 执行不区分大小写的匹配

g 执行一个全局匹配,简言之,即找到所有的匹配,而不是在找到第一个之后就停止

m 多行匹配模式,^匹配一行的开头和字符串的开头,$匹配行的结束和字符串的结束 /java$/m 可以匹配 javanfunc

注意:当正则表达式是全局的时候,每次exec() 和 test()的时候都会把当前设置的lastIndex设为当前的位置,再次执行的时候就会从lastIndex的位置开始执行,因此最好每次执行的时候lastIndex设置为0

希望本文所述对大家JavaScript程序设计有所帮助。

JavaScript拖拽、碰撞、重力及弹性运动实例分析 本文实例讲述了JavaScript拖拽、碰撞、重力及弹性运动实现方法。分享给大家供大家参考,具体如下:js拖拽、碰撞与重力实现代码:window.onload=function(){v

JS运动相关知识点小结(附弹性运动示例) 本文总结了JS运动相关知识点。分享给大家供大家参考,具体如下:1.多物体运动框架所有东西都不能共用2.document.title输出频率不能太高3.在写JS时尽量

基于javascript实现右下角浮动广告效果 本文实例为大家分享了基于javascript实现右下角浮动广告效果,供大家参考,具体内容如下效果图:具体代码:htmlheadmetahttp-equiv="Content-Type"content="text/html

标签: js正则 \w

本文链接地址:https://www.jiuchutong.com/biancheng/384663.html 转载请保留说明!

上一篇:jQuery鼠标悬浮链接弹出跟随图片实例代码(jquery鼠标位置)

下一篇:JavaScript拖拽、碰撞、重力及弹性运动实例分析(js实现拖拽div的弹出框)

  • 个人所得税中应纳税所得额高好还是低好
  • 应纳税所得额的会计分录
  • 代收代缴消费税会计分录
  • 借款给别的公司收到的利息会计分录怎么写
  • 报销应聘人员差旅费
  • 异地施工如何缴工会经费
  • 发票没认证可以作废吗?
  • 关于预计负债应付退货款明细科目
  • 扶贫算出差吗
  • 金融工具包括哪些及其法律特征
  • 公司注销取不到采购发票怎么汇算清缴?
  • 招聘时开具的专用发票可以抵扣吗?
  • 广告业增值税税率6%是多少
  • 2017房地产行业流动比率均值
  • 为什么增值税发票税率是1%
  • 银行账户基本户是什么意思
  • 回购股票手续费会计分录
  • 公司帮个人代缴社保会计分录
  • 淘宝无票采购账务处理
  • 进口货物退税流程
  • 应收账款出售给银行
  • 认缴制下收到股东转入的钱怎么入账
  • 出口退税生产企业税率
  • 小规模没有发票可以入账吗
  • win10 5月更新已知bug
  • 预算与决算对比分析
  • 房地产转让的条件
  • 住房公积金个税抵扣标准
  • thinkphp limit
  • WIN10怎么禁止始终处于活动状态
  • 建筑业预缴企业所得税税率
  • vue项目使用
  • 增值税多交可以退税吗
  • vue3获取dom元素的方法
  • pyecharts 表格
  • 增删改查功能实现
  • 委托代销商品委托方和受托方会计分录
  • 固定资产的特点不包括
  • 逆回购划算吗
  • 一般纳税人按简易办法计税销售额
  • 出租人在融资租赁中需要处理的会计问题
  • 小微企业城建税减免政策
  • mysql语句语法
  • 本年利润和利润分配属于什么账户
  • 工程管理服务属于哪个行业
  • 资产负债表中的固定资产怎么算
  • 其他应付款里借方有余额代表什么
  • 行政单位要不要税号?
  • 预付账款是负数有什么税收风险
  • 未开票收入如何结转成本
  • 差额征税问题
  • 缴纳城市维护建设税的纳税人有哪些
  • 外币汇率分录
  • 塔吊租赁费用是否包括司机指挥
  • 递延所得税资产和递延所得税负债
  • 混合销售行为征收增值税
  • 平行结转分步法例题
  • 微软在印度的投资
  • ubuntu无线网卡怎么用
  • centos8 bond0
  • windowssys
  • 装win7提示失败怎么办
  • Centos 6.4 64位版命令行下设置无线网卡教程
  • 如何关闭mcafee软件
  • win10控制面板如何卸载软件
  • linux系列
  • wire软件下载
  • 铁嘴大师
  • js判断数组是否相等
  • 批处理查询文件是否存在
  • 一键修复ie
  • cocos2d-js游戏开发
  • android listview属性
  • jquery怎么给文本框赋值
  • nodejs实战
  • shell中括号的作用
  • 个税申报系统如何增加新单位
  • 如何计算增值税税负率公式
  • 上海浦东税务网站官网
  • 地税局的全称是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设