JavaScript正则表达式:

JavaScript中,正则表达式通常用于两个字符串方法: search() replace()

search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。//返回匹配的第一个字符串的索引位置

replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

serch()方法使用正则表达式:

varstr = "Visit Runoob!";

varn = str.search(/Runoob/i);

使用字符串

varn = str.search(“Runoob”);

replace()方法使用正则表达式

vartxt = str.replace(/microsoft/i,"Runoob") //可以忽略大小写

使用字符串:

vartxt = str.replace("Microsoft","Runoob");

常用的容易混淆的:

n+

匹配任何包含至少一个 n 的字符串。

n*

匹配任何包含零个或多个 n 的字符串。 

n?

匹配任何包含零个或一个 n 的字符串。

 

test()方法是一个正则表达式方法

test()方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,返回 true,否返回 false

var patt = /e/;
patt.test("The best things in life are free!");

使用 exec()

exec() 方法是一个正则表达式方法。

exec() 方法用于检索字符串中的正则表达式的匹配。

该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null

/e/.exec("The best things in life are free!");

 

{n,} 匹配n次以上

{n,m} 匹配n-m次 

用re = newRegExp("pattern",["flags"]) 的方式比较好 
pattern : 正则表达式 
flags: g (全文查找出现的所有 pattern) 
i (忽略大小写) 
m (多行查找)

() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串

| 选择.匹配的要么是该符号左边的子表达式,要么它右边的子表达式 

 

(ab|cd)+ |ef) / 匹配的既可以是字符串 "ef",也可以是字符串"ab" 或者"cd" 的一次或多次重复.

/java(script)?/ 匹配的是字符串 "java",其后既可以有 "script",也可以没有. /

\w 任何单字字符, 等价于[a-zA-Z0-9] 

\W 任何非单字字符,等价于[^a-zA-Z0-9] 
\s 任何空白符,等价于[\ t \ n \ r \ f \ v] 
\S 任何非空白符,等价于[^\ t \ n \ r \ f \ v] 

举例:

function myFunc() {
  var test_value = document.getElementById("regid").value;  //获取输入的值
    reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    if(reg.test(test_value)){
        alert("满足邮箱格式要求")
    }else {
        alert("不满足要求")
    }}
/*校验是否中文名称组成 */
function ischina(str) {
    var reg=/^[\u4E00-\u9FA5]{2,4}$/;   /*定义验证表达式*/
    return reg.test(str);     /*进行验证*/
}
/*校验邮件地址是否合法 */
function IsEmail(str) {
    var reg=/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    return reg.test(str);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值