位置: 编程技术 - 正文

javascript学习笔记(八)正则表达式(javascript学习指南)

编辑:rootadmin

推荐整理分享javascript学习笔记(八)正则表达式(javascript学习指南),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript教程推荐知乎,javascript教程,javascript教程推荐知乎,javascript如何学,javascript怎么学,javascript学习指南,javascript学习指南,javascript基础笔记,内容如对您有帮助,希望把文章链接给更多的朋友!

基本概念

正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。

首先推荐几个正则表达式编辑器 Debuggex : PyRegex: Regexper: 说明:正则表达式通常用于两种任务:1.验证,2.搜索/替换。用于验证时,通常需要在前后分别加上^和$,以匹配整个待验证字符串;搜索/替换时是否加上此限定则根据搜索的要求而定,此外,也有可能要在前后加上b而不是^和$。此表所列的常用正则表达式,除个别外均未在前后加上任何限定,请根据需要,自行处理。

优先权顺序

在构造正则表达式之后,就可以象数学表达式一样来求值,也就是说,可以从左至右并按照一个优先权顺序来求值。 下表从最高优先级到最低优先级列出各种正则表达式操作符的优先权顺序:

操作符 描述 转义符 (), (&#;:), (&#;=), [] 圆括号和方括号 *, +, &#;, {n}, {n,}, {n,m} 限定符 ^, $, anymetacharacter 位置和顺序

建立正则表达式

构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与操作符将小的表达式结合在一起来创建更大的表达式。 可以通过在一对分隔符之间放入表达式模式的各种组件来构造一个正则表达式。

对 JScript 而言,分隔符为一对正斜杠 (/) 字符。例如:/expression/

对 VBScript 而言,则采用一对引号 ("") 来确定正则表达式的边界。例如:

看个例子

正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。

常用的正则表达式

匹配中文字符的正则表达式: [u4e-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

javascript学习笔记(八)正则表达式(javascript学习指南)

匹配双字节字符(包括汉字在内):[^x-xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:ns*r 评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(S*&#;)[^>]*>.*&#;</1>|<.*&#; /> 评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:^s*|s*$ 评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 评注:表单验证时很实用

匹配网址URL的正则表达式:[a-zA-z]+://[^s]* 评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5-字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,}$ 评注:表单验证时很实用

匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 评注:匹配形式如 - 或 -

匹配腾讯QQ号:[1-9][0-9]{4,} 评注:腾讯QQ号从开始

匹配中国邮政编码:[1-9]d{5}(&#;!d) 评注:中国邮政编码为6位数字

匹配身份证:d{}|d{} 评注:中国的身份证为位或位

匹配ip地址:d+.d+.d+.d+ 评注:提取ip地址时有用

匹配特定数字[copy] ^[1-9]d*$    //匹配正整数^-[1-9]d*$   //匹配负整数^-&#;[1-9]d*$   //匹配整数^[1-9]d*|0$  //匹配非负整数(正整数 + 0)^-[1-9]d*|0$   //匹配非正整数(负整数 + 0)^[1-9]d*.d*|0.d*[1-9]d*$   //匹配正浮点数^-([1-9]d*.d*|0.d*[1-9]d*)$  //匹配负浮点数^-&#;([1-9]d*.d*|0.d*[1-9]d*|0&#;.0+|0)$  //匹配浮点数^[1-9]d*.d*|0.d*[1-9]d*|0&#;.0+|0$   //匹配非负浮点数(正浮点数 + 0)^(-([1-9]d*.d*|0.d*[1-9]d*))|0&#;.0+|0$  //匹配非正浮点数(负浮点数 + 0)

评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串[copy]^[A-Za-z]+$  //匹配由个英文字母组成的字符串^[A-Z]+$  //匹配由个英文字母的大写组成的字符串^[a-z]+$  //匹配由个英文字母的小写组成的字符串^[A-Za-z0-9]+$  //匹配由数字和个英文字母组成的字符串^w+$  //匹配由数字、个英文字母或者下划线组成的字符串

评注:最基本也是最常用的一些表达式

思维导图

如何用JavaScript定义一个类 我原来的写法都是这样:functionDog(){this.name='hachi';}Dog.prototype={makeNoise:function(){alert('wangwangwang');}};后来又看到另外一种复杂一点而且看起来好像没有必要

JS合并数组的几种方法及优劣比较 本文属于JavaScript的基础技能.我们将学习结合/合并两个JS数组的各种常用方法,并比较各种方法的优缺点.我们先来看看具体的场景:varq=[5,5,1,9,9,6,4,5,8];varb=

Javascript中this的用法详解 前些日子面试的时候用到了this,面试官说我的理解有点偏差,回来看了下书和一些博客,做了点测试,发现自己的理解的确有误1.全局变量应该是最常

标签: javascript学习指南

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

上一篇:javascript学习笔记(七)Ajax和Http状态码(javascript怎么学)

下一篇:如何用JavaScript定义一个类(如何用u盘重装电脑系统)

  • 固定成本和变动成本之和称作
  • 定金冲抵货款怎么做分录
  • 个人所得税中的综合所得包括哪些
  • 企业福利费列支范围
  • 个体户每月开票超3万
  • 计入损益的税
  • 失业保险费返还后是给单位还是给员工
  • 出纳人员去银行提取现金时应填写现金缴款单
  • 企业预算管理为何要以企业战略,核心竞争力,风险为导向
  • 个税手续费返还属于政府补助吗
  • 单位部分承担个人借款利息个税的计算
  • 企业所得税扣除项目及标准
  • 个人所得税财产所得
  • 退回其他单位服务费怎么入账?
  • 进项票超过180天还可以认证吗
  • 空调减值损失属于什么科目?
  • 商用住房出租需要交什么税?
  • 母公司占股子公司多少
  • 个体户需不需要开立对公账户
  • 商贸公司可以申请进出口权吗
  • 正在注销的公司微信收的款怎么追回
  • 单位参加城镇职工基本养老保险缴费基数怎么填写
  • 销售赠品怎么入账
  • 预付股权转让款如何处理
  • 发票勾选了是否就抵扣了
  • 为什么我的win10
  • php怎么添加样式
  • phpadmin官网
  • 押金未退会计分录
  • 增值税进项税抵扣销项税
  • PHP:pcntl_wifstopped()的用法_PCNTL函数
  • 长期挂账的在建工程如何处理
  • 稿酬所得怎么交所得税
  • Docker部署nginx
  • 单位和个人交付的区别
  • 财税〔2017〕34号文件中提到的科技型中小企业是指哪种企业?
  • arc架构
  • 深入理解计算机系统 第三版 pdf
  • 工程建设质保金比例
  • 企业所得税包含在税金及附加里面吗
  • 背景渐变 css
  • nodejs安装及环境配置 centos
  • 固定资产处置的三种方式
  • 原始凭证必要时可以涂改
  • 应付职工薪酬总账和明细账
  • 员工休产假不发工资违法吗
  • 未签订劳动合同辞退赔偿金怎么算
  • 调整以前年度销项税怎么填申报表
  • 做私活要收个人所得税吗
  • 税法的个人所得税
  • 补贴收入是否交印花税
  • 员工垫付款报销单
  • 货物什么情况下需要分批运输
  • 代建项目谁付款
  • 预付账款借方如何结转
  • 原材料暂估入库成本结转处理
  • 客户到我公司签字怎么说
  • 银行汇票和银行本票区别图解
  • 公司增资认缴
  • sql语句排除重复数据
  • ubuntu20.04怎么安装
  • linux网络编程视频教程
  • win7系统的图片
  • win8.1使用技巧大全
  • linux ftp服务端
  • fedora update-grub
  • 在linux系统中,用来存放系统所需要的配置文件
  • 开发环境配置是干嘛
  • windows运行nodejs
  • android 快速开发
  • 用css滤镜实现的代码
  • unity unit
  • js中的set
  • jquery的方法
  • 说一说我下乡插队时的那点事
  • python爬虫京东
  • javascript的代码写在哪里
  • python+django
  • python环境及基础语法
  • 江西省国家税务局电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设