javascript正则表达式的用法笔记

原创 PHP笔记  2017-04-05 19:38  阅读 834 views 次

正则表达式(Regular Expression)可以使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式,搜索模式可以用作文本的搜索或文本的替换。RegExp是一种正则表达式的缩写,当检索某个文本的时候,可以使用一种模式来描述要检索的内容,RegExp 就是这种模式。简单的模式可以是一个单独的字符,更复杂的模式包括了更多的字符,并可用于解析、格式检查、替换等等。

javascript正则表达式语法

格式:

/正则表达式主体/修饰符(可选)

示例:

var patt= /hello/i;

javascript正则表达式方法

  • test():检索字符串中的指定值,检索到返回true,没检索到返回false;
  • exec():检索字符串中的指定值。如果检索到,则返回检索到的值。否则返回 null;
  • compile():用于改变RegExp。

1、test()方法

test()方法一般用来判断一个字符或字符串在另一个字符串中是否存在。如果存在返回true,否则返回false。

实例:

<script type="text/javascript">
var patt=/cd/;
var str="abcde";
document.write(patt.test(str));
</script>

输出结果:true

2、exec()方法

exec()方法一般用来返回按一定的规则在一个字符串中搜索到的内容。

实例:

<script type="text/javascript">
var patt=/[0-9]+@qq.com/;
var str="abcd162738172@qq.comabc";
document.write(patt.exec(str));
</script>

输出结果:162738172@qq.com

3、compile()方法

compile()方法一般用来改变正则表达式。

实例:

<script type="text/javascript">
var patt=/[0-9]@qq.com/;
var str="abcd162738172@qq.comabc";
document.write(patt.exec(str)+"<br/>");
patt.compile(/[0-9]+@qq.com/);
document.write(patt.exec(str));
</script>

输出结果:

2@qq.com

162738172@qq.com

正则表达式修饰符

  • i:不区分大小写;
  • g:全局匹配,不会因找到匹配而结束;
  • m:执行多行匹配。

常用正则表达式模式

  • [abc]:查找方括号之间的任何字符。
  • [0-9] :查找任何从0到9的数字。
  • (x|y) :查找任何以|分隔的选项。
  • \d:查找数字。
  • \s:查找空白字符。
  • \b:匹配单词边界。
  • \uxxxx:查找以十六进制数 xxxx 规定的 Unicode 字符。
  • n+:匹配任何包含至少一个 n 的字符串。
  • n*:匹配任何包含零个或多个 n 的字符串。
  • n?:匹配任何包含零个或一个 n 的字符串。

更多见:javascript正则表达式参考大全

本文地址:https://www.ggbiji.com/js-regular-expression.html
版权声明:本文为 PHP笔记 原创/整理文章,欢迎分享,转载请注明出处!

发表评论


表情