美文网首页
正则大法好

正则大法好

作者: sarah_wqq | 来源:发表于2019-01-11 17:25 被阅读0次

基础

1、定位

^ 字符串的开始
$ 字符串的结尾
\b 匹配一个字边界,即字与空格间的位置。
\B 非字边界

2、数字字母

\d \w
[0-9] [a-z] [A-z]
{n} 非负整数

3、非打印字符

\n 换行
\r 回车
\s 空白字符
\S 非空白字符

4、特殊字符

+ 一次或多次
* 零次或多次
. 除换行符 \n 之外的任何单字符
() 提取匹配的字符串 (0-9)匹配字符串"0-9"本身
(abc)? 表示这一组要么一起出现,要么不出现
[] 限定字符集 [0-9]*匹配数字
{n,m} 长度 [0-9]{0,9}表示长度为0到9的数字字符串
[^] 排除
| || 或

5、修饰符

i 大小写不敏感
g 全局匹配

6、

+ 和 * 贪婪匹配,匹配尽可能长的字符串
+? 和 *? 懒惰匹配,匹配符合条件的尽量短的字符串
(?!pattern) 过滤掉不包含的
(?:pattern) 优化性能,不反悔子匹配结果,比如:
(aaa)(bbb)(ccc)(?:ddd)(eee)可以用1获取(aaa)匹配到的内容,而3则获取到了(ccc)匹配到的内容,而$4则获取的是由(eee)

var str3 = "haabaab";
str3.match(/h.*b/);    //haabaab
str3.match(/h.*?b/);  //haab
str3.match(/ha+/);    //haa
str3.match(/ha+?/);  //ha

var str = "hello123back, hello456back";
str.match(/hello(?!456).*?back/);    //hello123back
str.match(/(hello).*/);      //["hello123back, hello456back", "hello"]
str.match(/(?:hello).*/);   //["hello123back, hello456back"]

7、前置后置

aaa(?=bbb) aaa后面必须是bbb
exp1(?!exp2) aaa后面不是bbb

(/a(?=b)/).test("xxxxabxxxx") //true
(/a(?!b)/).test("xxxxabxxxx")  //false

例子

匹配IP的每一段
^([0-9]||[1-9][0-9]||1[0-9][0-9]||2[0-4][0-9]||25[0-5])$

邮件地址
^\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*$/

用法

1.

var reg = new RegExp("^[0-9]+$");
reg.test(text);

2.

( /^[0-9]+$/).test(text);

3. replace

text.replace(/aaa/g, "bbb");

4.match

text.match(exp);

相关文章

  • 正则大法好

    基础 1、定位 ^ 字符串的开始$ 字符串的结尾\b 匹配一个字边界,即字与空格间的位置。\B 非字边界 2、数字...

  • python 正则大法好

    PythoN 正则 官方介绍:https://docs.python.org/3.2/library/re.htm...

  • 夏天太热怎么办

    SONY大法好~

  • 【其他】《饥荒》最实用食谱

    火龙果大法好

  • 真心话

    索尼大法好老婆大人好

  • 记忆大法好

    【3.10影响者微课 | 刘克共读】 刘克共读,每日十五分钟,《超强记忆》今日读书p124—p191。 这几天感冒...

  • BEF大法好

    只是放一下我画的BEF相关…… 以及:告诉wirt这个男人!! 我爱他啊啊啊啊啊!!! Bad end frien...

  • 睡眠大法好~

    从12点半睡到2点,感觉棒极了!完全缓解了昨晚锻炼的太厉害的不适感~~

  • 加班大法好

    反正我挺喜欢加班的 不喜看电视 看综艺 不喜玩游戏 不喜刷抖音 以前比较爱刷简书知乎 眼睛散光的厉害 就很少看 拿...

  • RTFSC大法好

    RTFSC是什么? Linus大神说的:Read The Fucking Source Code… 关于求助这件事...

网友评论

      本文标题:正则大法好

      本文链接:https://www.haomeiwen.com/subject/brdxdqtx.html