JavaScript基础知识-正则表达式
正则表达式
作用:定义一个特定的验证字符串内容规则的表达式
注:正则表达式并不是JavaScript独有的;JavaScript支持正则表达式
var a = { }; // 定义一个空对象 var b = [ ];// 定义一个空数组
var d = / /; // 定义一个空正则表达式 var c = ( ); 【错误】
i 定义正则表达式
定义一个空的正则表达式时 ---编辑器会报错; 空的正则表达式的值 ---undefined
- 字面量方式
var 正则表达式 = /表达式规则/修饰符
- 构造函数方式
var 正则表达式 = new RegExp(表达式规则,修饰符)
i 正则表达式对象的验证方法
先定义用于验证的字符串;再定义正则表达式的规则;后验证字符串是否符合正则表达式的规则
eg: /表达式规则/.test (所有内容的字符串)
结果:完全相同返回 true [注:必要是匹配和位置无关]
² 直接字符
[ ] 表示字符集合。只要其中任意一个匹配,则返回true 数字: [0-9] 字母: [a-zA-Z]
^ 表示反向集合 \d : [0-9] -> 匹配单个数字
? 表示匹配前面一个字符0次或者1次,和{0,1}有相同的效果。
+ 表示匹配前面一个字符1次或者多次,和{1,}有相同的效果。
* 表示匹配前一个字符0次或者是多次。
² 重复规则 –
{n,m} - 匹配前面的字符最少出现n次,最多出现m次;即n <= 次数 <= m
{n} - 匹配前面的字符出现 n 次
² 位置规则
^:表示字符的开始位置; $:表示字符的结束位置
eg: / [ ]{n,m} / ----【连续】出现【n到m次】
/ [数字和字母]{n,m} / ----只要字母和数字有其一即可
/ ^[数字和字母]{n,m} / ----以数字或字母【开头】,且连续出现n到m次
/ {n,m}$ / ---以数字或字母【结尾】,且连续出现n到m次
/ ^[ ]{n,m}$ / ----以数字或字母【结尾】【总共】个数是n到m
8 直接量字符
\t : 水平制表符 TAB键 \n 或 \r : 换行符或回车符 ENTER键
8 修饰符
i - 表示不区分大小写; g - 全局搜索; m - 多行搜索;
eg: var 名称 = /正则表达式/ i; var 名称 = new RegExp('[a-z]{3,5}', 'i' );
u 字符串使用正则表达式的方法
² 替换方法
replace(/被替换的内容/,被替换的内容 ) 被替换的内容---使用正则表达式
² 匹配内容—>数组
match(/需匹配的内容/)
返回值:是一个数组; 需匹配的内容---使用正则表达式
(注:若参数为字符串时,返回的数组只有一个元素)
² 查找内容—>位置
search(需查找的内容)
返回值:匹配内容的索引值 (注:如果没有任何内容匹配的话,返回 -1)
JavaScript基础知识-正则表达式的更多相关文章
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- JavaScript基础知识整理
只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...
- JavaScript基础知识笔记
做前端几年了,一直疏于整理归纳,所以这两天把基础看了一遍,加上使用经验,整理了基础知识中关键技术,旨在系统性的学习和备忘.如果发现错误,请留言提示,谢谢! 重要说明:本文只列举基础知识点,中级和高级内 ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
- Jquery源码中的Javascript基础知识(三)
这篇主要说一下在源码中jquery对象是怎样设计实现的,下面是相关代码的简化版本: (function( window, undefined ) { // code 定义变量 jQuery = fun ...
- JavaScript基础知识(一)
一.JavaScript基础 1.JavaScript用法: HTML 中的脚本必须位于 <script> 与 </script> 标签之间. 脚本可被放置在 HTML 页面的 ...
随机推荐
- chrome、firefox、IE中input输入光标位置错位解决方案
以前在项目里碰到过一个问题 input输入框用一个背景图模拟,设置height和line-height一样的高度,使里面的输入文字能够居中, 在FF下出现的情况是:点击input时,输入光标其实上跟i ...
- JS中常见问题
//s金额 n保留几位小数 默认保留两位小数 s代表金额,n代表保留的小数位数 function formatMoney(s, n) { n = n > 0 && n <= ...
- 图片放大不失真软件PhotoZoom如何使用?
PhotoZoom可以将我们一些过于像素低的照片可以无失真放大,那么PhotoZoom是如何实现无失真照片放大的呢? 以上图像中的编号表示每个步骤应操作的位置. 单击“打开”,并选择您想调整大小的图像 ...
- linux 性能分析与优化
一.影响Linux服务器性能的因素 1.操作系统级 (CPU 内存 磁盘I/O性能 网络带宽) 2.程序应用级 二.系统性能评估标准 好 坏 极差 cpu user% +sys% <70% ...
- Vue双向绑定
vue的双向数据绑定的原理相信大家都十分了解:主要是通过ES5的Object对象的defineProperty属性:重写data的set和get函数来实现的. 该方法允许精确的添加或者修改对象的属性: ...
- `itchat`配置代理
config.py配置 首先,先找到itchat安装的目录,然后定位到config.py文件: import os, platform VERSION = '1.3.10' BASE_URL = 'h ...
- 如何分页爬取数据--beautisoup
'''本次爬取讲历史网站'''#!usr/bin/env python#-*- coding:utf-8 _*-"""@author:Hurrican@file: 分页爬 ...
- THUWC2019 划水记
Day -2 在学校呆了inf天之后终于回家了! Day 0 在家无(tui)所(fei)事(mo)事(yu),顺便被拉出去剪了个头发,想写写thusc2017的题也写不动,一直在网上冲浪,到处乱翻以 ...
- Project Euler 34 Digit factorials
题意:判断一个数 N 的各个位数阶乘之和是否为其本身,找出所有符合要求的数然后求和 思路:此题思路跟 30 题相同,找到枚举上界 10 ^ n <= 9! × n ,符合要求的 n < 6 ...
- python 协程 greenlet gevent
一.并发的本质 切换+保存状态 cpu正在运行一个任务,会在两种情况下切走去执行其他的任务(切换由操作系统强制控制),一种情况是该任务发生了阻塞,另外一种情况是该任务计算的时间过长时间片到了 二.协程 ...