乐趣区

关于regexp:javascript高级4

正则表达式

正则表达式是一个对象,次要是用于匹配字符串中字符组合的模式。

特点

  • 可过滤页面内容的一些敏感词
  • 从字符串获取咱们想要的特定局部。

创立正则表达式

在 javascript 中,能够通过两种形式创立正则表达式
test() 是正则表达式对象的办法,用来测验字符串是否合乎该规定,返回值为 true 或者 false.

留神:正则表达式不须要加引号,不论是字符串或值型

1. 通过 RegExp 对象的形式创立正则表达式

var 变量名 = new RegExp(/ 表达式 /)

2. 通过字面量创立

var 变量名 = / 表达式 /

正文两头放表达式就是正则表达式字面量


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title> 正则表达式 </title>
</head>
<body>

</body>
<script>
  //1. 利用 RegExp 对象来创立正则表达式
  let regexp = new  RegExp(/123/);
  console.log(regexp)


  //2. 利用字面量的形式来创立
  let regexp2 = /123/;
  console.log(regexp2)

  //test()办法用来测验字符串参数是否合乎正则表达式的规定
  console.log(regexp.test(123));
  console.log(regexp2.test(123));
</script>
</html>

### 正则表达式的组成

一个正则表达式能够由简略的字符组成,比方 /abc/, 也能够是简略与特殊字符的组合,如 ^、$、+ 等。

特殊字符十分多,能够参考:

  • MDN:https://developer.mozilla.org…
  • jQuery 手册:正则表达式局部
  • 正则测试工具: http://tool.oschina.net/regex
  • 特殊字符也别称为元字符

边界符

正则表达式中的边界符(地位符)用来提醒字符所在的地位,次要有两个字符

如果 ^ 与 $ 同时存在,则代表精准匹配

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title> 正则表达式之边界符 </title>
</head>
<body>

</body>
<script>
    let regexp = /abc/;
    //test()办法外面的参数只有蕴含 abc 字符,即为 true
    console.log(regexp.test('abc'))//true
    console.log(regexp.test('abcd'))//true
    console.log(regexp.test('abcde'))//true

    let regexp2 = /^abc/
    //test()办法外面的参数必须以 abc 结尾,即为 true
    console.log(regexp.test('abc'))//true
    console.log(regexp.test('bacd'))//false
    console.log(regexp.test('abcde'))//true

    let regexp3 = /^abc$/
    //test()办法外面的参数必须是 abc,即为 true
    console.log(regexp.test('abc'))//true
    console.log(regexp.test('bacd'))//false

</script>
</html>

退出移动版