热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaScript面向对象编程——RegExp范例

概述正则表达式是什么正则表达式(RegularExpression):由一些一般字符和特别字符组成的,用以形貌一种特定的字符划定规矩的表达式。正则表达式经常运用在一段文本中搜刮、婚

概述

正则表达式是什么

正则表达式(RegularExpression):由一些一般字符和特别字符组成的,用以形貌一种特定的字符划定规矩的表达式。
正则表达式经常运用在一段文本中搜刮、婚配或替代特定情势的文本。比方:词语涌现频次统计、考证字符串是不是相符邮箱花样、屏障一篇帖子中的限制性词语等。

建立正则表达式

/*
1.字面量/直接量体式格局
var 变量名 = /pattern/attributes
* pattern - 称为形式,用于定义正则表达式的内容
* attributes - 称为修饰符,用于定义正则表达式的行动
*/
var reg = /123456789/i;
/*
2.组织函数体式格局
var 变量名 = new RegExp(pattern [, attributes])
* pattern - 称为形式,用于定义正则表达式的内容
* attributes - 称为修饰符,用于定义正则表达式的行动
*/
var reg = new RegExp('123456789', 'i');

pattern参数:被称为形式,能够使任何简朴或庞杂的正则表达式,包括字符类、限定符、分组、向前查找以及反向援用等。
attributes参数:被称为修饰符,用于表明正则表达式的行动。

标记

直接量字符

正则表达式中的一切字母和数字都是根据字面寄义举行婚配的。Javascript正则表达式语法也支撑非字母的字符婚配,这些字符须要经由过程反斜线作为前缀举行转义。

《Javascript面向对象编程——RegExp范例》

字符类

将直接量字符零丁放进方括号内就组成了字符类。一个字符能够婚配它所包括的恣意字符。由于某些字符类异常经常运用,Javascript的正则表达式中,运用特别转义字符示意他们。

《Javascript面向对象编程——RegExp范例》

var str = 'king';
// 正则表达式的内容中定义划定规矩 -> 考证的内容是不是包括划定规矩
// var reg = /123456789/;
// 正则表达式的内容中定义划定规矩 -> 考证的内容婚配任何字符即可
var reg = /[0123456789]/;
var reg = /[\d]/;
var reg = /[0-9]/;
var reg = /[a-zA-Z]/;
var result = reg.test(str);
console.log(result);

反复

在Javascript中的正则表达式用来形貌恣意多位的数字,或许形貌由三个字母和一个数字组成的字符串时,能够运用字符反复耳钉标记。

《Javascript面向对象编程——RegExp范例》

var str = 'wolong124xue3yuan';
/*
{n, m} - 示意字符类中恣意字符涌现的次数
* n - 示意最少涌现n次(包括n次)
* m - 示意最多涌现m次(包括m次)
* 注重 - 涌现的次数必需是一连的
*/
var reg = /[0-9]{3,5}/;
var result = reg.test(str);
console.log(result);

婚配指定的位置

正则表达式中的多个元素才能够婚配字符串的一个字符,这些元素称之为正则表达式的锚。由于它们将形式定位在搜刮字符串的特定位置上。

《Javascript面向对象编程——RegExp范例》

经常运用两中‘^’和‘$’一个示意从婚配输入的最先,另一个示意 从婚配输入的完毕。

var str = '12a45';
// 示意以什么最先的
// var reg = /^[0-9]{3,5}/;
// 示意以什么完毕的
// var reg = /[0-9]{3,5}$/;
// 示意婚配内容的长度只能为最少n次,最多m次,而且内容必需与字符类婚配
var reg = /^[0-9]{3,5}$/;
var result = reg.test(str);
console.log(result);
// 长度为6-16位的数字或字母
/^[0-9a-zA-Z]{6,16}$/

修饰符

正则表达式的修饰符,用于申明高等婚配形式的划定规矩。修饰符是放在“/”标记背面的,Javascript支撑三个修饰符
1.i:不辨别大小写搜刮。
2.g:全局搜刮。
3.m:多行搜刮.
代码示例:

var str = 'wolongxueyuan';
var reg = /^[A-Z]{8,16}$/i;
var result = reg.test(str);
console.log(result);

对象

建立RegExp对象

Javascript能够经由过程援用范例RegExp建立正则表达式对象
参数:
1.pattern参数:被称为形式,能够使任何简朴或庞杂的正则表达式,包括字符类、限定符、分组、向前查找以及反向援用等。
2.attributes参数:被称为修饰符,用于表明正则表达式的行动。
代码示例

var arr = new RegExp(pattern,attributes);

RegExp对象的属性

《Javascript面向对象编程——RegExp范例》

RegExp对象的要领

RegExp独享的要领有三种:
1.compile():编译/从新编写正则表达式,将pattern转换为每部花样,加速实行速率。
2.exec():检索字符串中指定的值。返回找到的值,并肯定其位置;影响lastlndex属性的值。
3.test():检索字符串中指定的值。返回true或false;影响lastlndex属性的值。


推荐阅读
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了绕过WAF的XSS检测机制的方法,包括确定payload结构、测试和混淆。同时提出了一种构建XSS payload的方法,该payload与安全机制使用的正则表达式不匹配。通过清理用户输入、转义输出、使用文档对象模型(DOM)接收器和源、实施适当的跨域资源共享(CORS)策略和其他安全策略,可以有效阻止XSS漏洞。但是,WAF或自定义过滤器仍然被广泛使用来增加安全性。本文的方法可以绕过这种安全机制,构建与正则表达式不匹配的XSS payload。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 本文整理了315道Python基础题目及答案,帮助读者检验学习成果。文章介绍了学习Python的途径、Python与其他编程语言的对比、解释型和编译型编程语言的简述、Python解释器的种类和特点、位和字节的关系、以及至少5个PEP8规范。对于想要检验自己学习成果的读者,这些题目将是一个不错的选择。请注意,答案在视频中,本文不提供答案。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • 本文介绍了在Go语言中可见性与scope的规则,包括在函数内外声明的可见性、命名规范和命名风格,以及变量声明和短变量声明的语法。同时,还介绍了变量的生命周期,包括包级别变量和局部变量的生命周期,以及变量在堆和栈上分配的规则和逃逸分析的概念。 ... [详细]
author-avatar
手机用户2502891053
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有