对文本数据进行操作是JavaScript中常见的任务。正則表達式通过同意程序猿指定字符串匹配的模式来简化诸如验证表单中输入是否具有正确格式之类的任务。

1.正則表達式标记:


字符

含义

举例

i

大写和小写不敏感

对于模式/http/i  “http” 和“HttP” 一样能够匹配

g

全局匹配。找出所有匹配字符串,而不不过找到第一个就返回。

经常使用于替换

m

多行匹配


2.正則表達式位置指示符:规定模式在它所匹配的字符串里的位置。


字符

含义

举例

^

开头

对于/^http/ 仅仅匹配以http开头的字符串

$

结束

对于/http$/ 仅仅匹配以http结尾的字符串

能够同一时候使用这两个位置指示符来确保精确的匹配给定的模式,如:/^http$/ 将仅仅匹配http。

3.转义码:

代码

含义

\f

换页

\n

换行

\r

回车

\t

水平制表符

\v

垂直制表符

\/

正斜杠

\\

反斜杠

\OOO

八进制值OOO代表的ASCII字符

\xHH

十六进制HH代表的ASCII字符

\uHHHH

十六进制HHHH代表的Unicode字符

\cX

由^X代表的控制字符,如:\cH代表Ctrl+H

\各种标点符号、运算符号、括弧等

各种标点符号、运算符号、括弧等

用在正則表達式中的转义码是用在字符串中的转义码的超集(在正則表達式中有非常多带特殊含义的字符如^和$等)。

4.详细实例

<script language="javascript" type="text/javascript">
//以XXX开头
var reg=/^中/g;//定义以中字开头的表达式
var str="中国万岁,我爱中国!";
str=str.replace(reg,"棕");
alert(str); //以XXX结尾
var reg=/t$/g;
var str="good foot got makt thinkt";
str=str.replace(reg,"W");
alert(str); //表示随意字符
var reg=/想.想/g;
var str="想一想,看一看,想啊想啊想啊想";
var found=str.match(reg);
alert(found); //字符集[...] 多选一 [^...]一个都不能选
var reg=/g[eo]t/g;
var str="get getloooot geeeet";
var found=str.match(reg);
alert(str); //数字/d
var reg=/\d\d\d/g;
var str="976,2323,222222,2222";
var found =str.match(reg);
alert(found); //test ||
var reg=/\d\d\d/g;
var str="976,2323,222222,2222";
var t=reg.test(str);
alert(t); //规定仅仅能输字符的位数
//\d{n}:n个数字
//\d{n,m}:n-m个数字
//\w{n,}:n个字符以上
var reg=/^\d{3}$/g;//仅仅能输入3位
var str="234234";
var t=reg.test(str);
if(t)
{
alert("验证通过!");
}
else
{
alert("验证未通过");
} //仅仅能一个字符或者没有字符:?
var reg=/12?3/g;//2可有也可没有
var str="12f3,123,12345,13";
var found=str.match(reg);
alert(found);<span style="white-space:pre"> //从a-z的全部字母
<span style="white-space:pre"> </span>//[0-9]的全部数字
<span style="white-space:pre"> </span>var reg=/^[a-z]$/gi;
<span style="white-space:pre"> </span>var str="g";
<span style="white-space:pre"> </span>var t=reg.test(str);
<span style="white-space:pre"> </span>if(t)
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>alert("验证通过!");
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>else
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>alert("验证未通过");
<span style="white-space:pre"> </span>} </span>
</script>

javascript中的正則表達式的更多相关文章

  1. hive中使用正則表達式不当导致执行奇慢无比

    业务保障部有一个需求,须要用hive实时计算上一小时的数据.比方如今是12点,我须要计算11点的数据,并且必须在1小时之后执行出来.可是他们用hive实现的时候发现就单个map任务执行都超过了1小时, ...

  2. C++ Tr1中的正則表達式

    要使用正則表達式,首先要有类库支持,C++曾经不像Java或者C#有完整的类库使用,可是在Tr1中早已提供了正则库,仅仅是非常少被人们注意罢了 TR1中包括了一个正则库,来自Boost的 regex, ...

  3. vim中使用正則表達式

    一.使用正則表達式的命令 使用正則表達式的命令最常见的就是 / (搜索)命令. 其格式例如以下: /正則表達式 还有一个非常实用的命令就是 :s(替换)命令,将第一个//之间的正則表達式替换成第二个/ ...

  4. 对于C11中的正則表達式的使用

    Regular Expression Special Characters "."---Any single character(a "wildcard") & ...

  5. JavaScript使用正則表達式

    2.0 简单介绍 正則表達式是能够用来查找与给定模式匹配的文本的搜索模式.比如,在上一章中,我们在一个较长的字符串中查找子字符串Cookbook: var testValue = "This ...

  6. JavaScript正則表達式知识汇总

    Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...

  7. 使用正則表達式的格式化与高亮显示json字符串

    使用正則表達式的格式化与高亮显示json字符串 json字符串非常实用,有时候一些后台接口返回的信息是字符串格式的,可读性非常差,这个时候要是有个能够格式化并高亮显示json串的方法那就好多了,以下看 ...

  8. JAVA中正則表達式总结

    昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...

  9. 7.4 Javascript:表单验证-揭开正則表達式的面纱

    用元字符匹配对应的字符类型 创建正則表達式有点像创建字符串字面量,仅仅只是正則表達式出如今一对"/"里 正則表達式中会用到一级元字符.用于连接字母与数字 "." ...

随机推荐

  1. 为当前用户创建cron服务

    为当前用户创建cron服务 1.  键入 crontab  -e 编辑crontab服务文件 例如 文件内容如下: */2 * * * * /bin/sh /home/admin/jiaoben/bu ...

  2. 常用的WebService一览表

    天气预报Web服务,数据来源于中国气象局Endpoint :http://www.webxml.com.cn/WebServices/WeatherWebService.asmxDisco       ...

  3. 好的web前端是如何拿到30万年薪的?

    2018年前端开发不再像过去几年里新技术框架层出不穷,而是各种组件,模块,很多东西都有痕迹可寻,技术都在原来的基础上有了革新和沉淀. 前端招聘方面也在紧跟技术发展,大量“滥竽充数”的速成开发者开始失去 ...

  4. int 与 String 与 char 之间的互相转换

    int 转 String: //方式一: int i1 = 888; String s1 = Integer.toString(i1); //方式二: int i2 = 888; String s2 ...

  5. 【互动问答分享】第7期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    “决胜云计算大数据时代” Spark亚太研究院100期公益大讲堂 [第7期互动问答分享] Q1:Spark中的RDD到底是什么? RDD是Spark的核心抽象,可以把RDD看做“分布式函数编程语言”. ...

  6. POJ 1988 Cube stacking【并查集高级应用+妙用deep数组】

    Description Farmer John and Betsy are playing a game with N (1 <= N <= 30,000)identical cubes ...

  7. hdu6086(AC 自动机)

    hdu6086 题意 字符串只由 \(01\) 组成,求长度为 \(2L\) 且包含给定的 \(n\) 个子串的字符串的个数(且要求字符串满足 \(s[i] \neq s[|s| - i + 1]\) ...

  8. POJ2032 Building a Space Station(Kruskal)(并查集)

    Building a Space Station Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 7469   Accepte ...

  9. 水流(water)(BFS)(DFS)

    水流(water) 时间限制: 1 Sec  内存限制: 64 MB提交: 9  解决: 2[提交][状态][讨论版] 题目描述 全球气候变暖,小镇A面临水灾,于是你必须买一些泵把水抽走.泵的抽水能力 ...

  10. 数字 function

    SELECT TRUNC(15.79), TRUNC(), ROUND(15.79), ), ), FLOOR(26.983), CEIL(26.123), ), ), ), MOD(,) FROM ...