JavaScript正则表达式语法

JavaScript详细笔记大全.

使用字面量来创建正则表达式
语法: var变量=/正则表达式/匹配模式
使用字面量的方式创建更加简单
使用构造函数创建更加灵活

  var reg=/a/i;  //相当于===var regex = new RegExp("a","i");
 console.log(reg.test("ABC"));

创建一个正则表达式,检查一个字符串中是否有a或b
使用│表示或者的意思

 reg=/a|b|C/i;

创建一个正则表达式检查一个字符串中是否有字母
[]里的内容也是或的关系
[ab] == a| b
[a-z]任意小写字母
[A-Z]任意大写字母
[A-z]任意字母

   reg=/[ab]/;
    reg=/[a-z]/;

检查一个字符串中是否含有abc或adc或aec

  reg=/a[bde]c/;

[^ ] 除了

 reg=/[^ab]/;

量词
-通过量词可以设置一个内容出现的次数
-量词只对它前边的一个内容起作用

  • {n}正好出现n次
  • {m,n}出现m-n次
  • {m, } m次以上
    • 至少一个,相当于{1,}
    • 0个或多个,相当于{0,}
  • ? 0个或1个,相当于{0,1}
 var reg=/a{3}/;
 
  reg=/a{1,3}/;
reg=/(ab){3}/;
console.log(reg.test("ababab"));

reg=/a{1,}/;
reg=/ab+c/;
reg=/ab*c/;
reg=/ab?c/;

 console.log(reg.test("ac"));

检查一个字符串中是否以a开头
^表示开头 注:/^a/是以a开头意思 与[^a] 是除了a的意思
$表示结尾

 
 reg=/^a/;
 console.log(reg.test("agsdg"));
reg=/a$/;
console.log(reg.test("sdga"));

如果在正则表达式中同时使用^$则要求字符串必须完全符合正则表达式

reg=/^bbz$/;
console.log(reg.test("bbz"));

创建一个正则表达式,用来检查一个字符串是否是一个合法手机号

手机号的规则:
1 3 567890123 (11位)
1.以1开头
2.第二位3-9任意数字3.三位以后任意数字9个
^1 [3-9] [0-9]{9}

var str="13476669476";
var reg=/^1[3-9][0-9]{9}$/;
console.log(reg.test(str));

检查一个字符串中是否含有﹒
.表示任意字符
在正则表达式中使用\作为转义字符
\.来表示.
\表示
注意,使用构造函数时,由于它的参数是一个字符串,而\是字符串中转义字符,
如果要使用\则需要使用\来代替


var reg=/\./;
console.log(reg.test("fad.sf"));

reg=/\\/;
console.log(reg.test("fdsf\\gfdh"));

var regex= new RegExp("\\\\");
console.log(regex.test("dfsg\\aas"));


\ w
-任意字母、数字、[A-z0-9]
\w
-除了字母、数字、[^A-z0-9]
\d
-任意的数字[0-9]
\D
-除了数字[^e-9]
\s
空格
\S
除了空格
\b
单词边界
\B
除了单词边界


reg=/\w/;//任意字母、数字
reg=/\W/;//除了字母、数字
reg=/\d/;//任意的数字
reg=/\D/;//除了数字
reg=/\s/;//空格
reg=/\S/;//除了空格

创建一个正则表达式检查一个字符串中是否含有单词hello

reg=/\bhello\b/;
console.log(reg.test("hello word"));

reg=/\Bhello\B/;
console.log(reg.test("ADhelloAD word"));

接收一个用户的输入
var str = prompt(“请输入你的用户名:”);

var str="   hello    word    ";
// 去除掉字符串中的空格
// 去除空格就是使用""来替换空格
console.log(str.replace(/^\s*|\s*$/,""));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值