Home  >  Article  >  Web Front-end  >  A summary of the usage of common regular expressions in js

A summary of the usage of common regular expressions in js

不言
不言Original
2018-08-13 10:15:031684browse

This article brings you a summary of the usage of regular expressions commonly used in js. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

I have done several projects recently and found that regular expressions are used more and more. My personal habit is not to memorize things that can be obtained by looking up manuals. Although most technical websites have collected a bunch of usage of Javascript regular expressions, I still want to compile a manual with more practical significance. To put it bluntly, if you need to use regular expressions in the future, just come over and copy and paste them! I will try my best to make the layout as beautiful as possible so that everyone can improve development efficiency. The preceding is a concise usage of Javascript regular expressions. Please skip to the last section for practical content.

Three modifiers

There are three modifiers in Javascript's regular expressions: i, g, m

After adding i, regular matching is no longer case-sensitive (Default case-sensitive):

var reg = /j/;
reg.test('Javascript'); //结果为false
var reg2 = /j/i;
reg2.test('Javascript'); //结果为true

javascript

After adding g, global matching will be performed (default will stop after matching once):

var reg = /a/;
'Javascript'.replace(reg,'e'); //结果为Jevascript
var reg2 = /a/g;
'Javascript'.replace(reg2,'e'); //结果为Jevescript

javascript

After adding m, multi-line matching will be performed (only one line by default):

var reg = /^s/;
reg.test('Java\nscript'); //结果为false
var reg2 = /^s/m;
reg2.test('Java\nscript'); //结果为true

javascript

Methods involving regular expressions

Many people may be confused about the functions used by regular expressions. Here are some commonly used methods:

The string is followed by 3 common functions: match(reg) (returns the matched string) , replace(reg,'...') (replace content), search(reg) (return the starting position of the matching content)

The regular expression is followed by 2 common functions: test(string) (return Whether it matches), exec(string) (returns the matched string)

Declaration of regular expressions

There are two declaration methods, use them according to the specific situation:

var reg = /a/; // 普通声明方式,大多数情况下使用
var reg2 = new RegExp('a','g'); // 字符串声明方式,部分情况特别有用

JS regular expression practical usage

JS regular expression for mailbox:

var mailReg = /^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;

JS regular expression for mobile phone:

var phoneReg = /^1\d{10}$/;

JS regular expression for ID card:

var idCardReg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;

JS regular expression for name (Chinese characters):

var nameReg = /^[\u4e00-\u9fa5]{2,4}$/; // 2-4位的汉字名字

JS regular expression for common domain name:

var urlReg = /^(http(s)?:\/\/)?(www\.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:\d+)*(\/\w+\.\w+)*([\?&]\w+=\w*)*$/; // https或http协议的url

JS regular expression for username:

var userNameReg = /^[A-Za-z0-9-_]*$/; // 用户名为数字英文下划线或短划线

JS regular expression for QQ number:

var qqReg = /^[1-9][0-9]{4,}$/;

JS regular expression for zip code:

var mailReg = /^[1-9][0-9]{5}$/;

JS regular expression for HTML tag:

var tagReg = /<[^>]+>/; //可以用来去掉html文本中的标签,得到纯文字

JS for date Regular expression:

var dateReg = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/; //YYYY-MM-dd格式,短线可以视情况替换

JS regular expression of time:

var timeReg = /^([0-1]\d|2[0-3]):[0-5]\d:[0-5]\d$/; //HH:mm:ss格式,冒号可以视情况替换

The above are some commonly used JS regular expressions

Related recommendations:

How does js format xml string and highlight it? (Attached code)

JS basic series of regular expressions

The above is the detailed content of A summary of the usage of common regular expressions in js. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn