阅读 2299

三款可视化工具,帮你学会 JS 正则表达式

最近老王对可视化非常着迷。

例如,算法可视化、正则可视化、Vue 数据劫持可视化......

程序的运行过程是看不见摸不着的,如果能够全部实现可视化,那么理解难度将会大幅度减小。

三款 JS 正则可视化工具

  • https://jex.im/regulex
  • https://regexper.com (网络需自由)
    • https://aoxiaoqiang.github.io/reg (替代工具)
  • https://www.debuggex.com

常见正则表达式

以下图片由https://jex.im/regulex生成

邮箱

只允许英文字母、数字、下划线、英文句号、以及中划线组成

^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$
复制代码
邮箱
邮箱

电话

手机号码

13012345678 手机号码

^1(3|4|5|6|7|8|9)\d{9}$
复制代码
手机号码
手机号码

固定电话

XXX-XXXXXXX XXXX-XXXXXXXX 固定电话

(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
复制代码
固定电话
固定电话

域名

https://google.com/

^((http:\/\/)|(https:\/\/))?([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}(\/)
复制代码
域名
域名

IP

127.0.0.1

((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))
复制代码

帐号校验

laowang_001 字母开头,允许 5 - 16 字节,允许字母数字下划线

^[a-zA-Z][a-zA-Z0-9_]{4,15}$
复制代码

字符校验

汉字

前端老王

^[\u4e00-\u9fa5]{0,}$
复制代码
中文
中文

英文和数字

^[A-Za-z0-9]+$
复制代码

长度为 3 - 20 的所有字符

^.{3,20}$
复制代码

英文字符

由 26 个英文字母组成的字符串

^[A-Za-z]+$
复制代码

由 26 个大写英文字母组成的字符串

^[A-Z]+$
复制代码

由 26 个小写英文字母组成的字符串

^[a-z]+$
复制代码

由数字和 26 个英文字母组成的字符串

^[A-Za-z0-9]+$
复制代码

由数字、26 个英文字母或者下划线组成的字符串

^\w+$
复制代码

中文、英文、数字包括下划线

^[\u4E00-\u9FA5A-Za-z0-9_]+$
复制代码

中文、英文、数字但不包括下划线等符号

^[\u4E00-\u9FA5A-Za-z0-9]+$
复制代码

禁止输入含有%&',;=?$"等字符

[^%&',;=?$\x22]+
复制代码

禁止输入含有~的字符

[^~\x22]+
复制代码

数字正则

整数

^-?[1-9]\d*$
复制代码
正整数
^[1-9]\d*$
复制代码
负整数
^-[1-9]\d*$
复制代码
非负整数
^[1-9]\d*|0$
复制代码
非正整数
^-[1-9]\d*|0$
复制代码

浮点数

^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
复制代码
正浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
复制代码
负浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
复制代码
非负浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
复制代码
非正浮点数
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
复制代码

推荐

又一款开源图标库 CSS.GG,值得一用

三款可视化工具,帮你学会正则表达式

React 中必须掌握的 10 个基础知识

Follow