Without further ado, let’s get right on the right track. If you want to know more about the usage of js regular expressions, learn through this tutorial.
Definition and use
var patt1 = new RegExp("hello"); var patt2 = /world/ ;
test method
The test() method retrieves a specified value in a string. The return value is true or false.
var pat = /my/; var str = "this is my code..."; console.log(pat.test(str)); // true
exec method
The exec() method retrieves a specified value from a string. The return value is the found value. If no match is found, null is returned.
var pat = /hello/; console.log(pat.exec("oh hello world")); //返还hello
Regular expression type
/pattern/attributes
The parameter attributes is an optional string. Common attributes "g" and "i" are used to specify global matching and case-sensitive matching respectively.
var str = "Visit Hunger"; var patt1 = /hunger/i; //不区分大小写 console.log(str.match(patt1)); //全局匹配 var str="hello hunger valley! I am hunger"; var patt1=/hunger/g; console.log(str.match(patt1)); //不区分大小写,全局匹配 var str="hello Hunger valley! I am hunger"; var patt1=/hunger/gi; console.log(str.match(patt1));
String regularization
1. search
String search
var str="Visit W3School!"; console.log(str.search(/w3school/)); //-1 console.log(str.serach(/w3school/i)); // 6
2. match
String matching
var str="1 plus 2 equal 33"; console.log(str.match(/\d+/)); //[1] console.log(str.match(/\d+/g)); //[1,2,33]
3. replace
String replacement
var str="Hello JI! oh I am hunger" console.log(str.replace(/Hunger/, "valley")); console.log(str.replace(/hunger/ig, "hunger"));
4.split
String splitting
var str = "Hello Hunger , oh I am Hunger"; str.split(""); str.split(/\s+/);
Regular writing
[abc] Find any characters between square brackets.
var str="Is this all there is?"; var patt1=/[a-h]/g; console.log(str.match(patt1));
[^abc] finds any characters not between square brackets.
var str="hello jikexueyuan!"; var patt1=/[^jike]/g; console.log(str.match(patt1));
[0-9] Finds any number from 0 to 9.
[a-z] Finds any character from lowercase a to lowercase z.
[A-Z] Finds any character from uppercase A to uppercase Z.
[A-z] Finds any character from uppercase A to lowercase z.
[adgk] Find any character within the given set.
[^adgk] Find any character outside the given set.
red|blue|green finds any specified option.
var str="hello hunger! How are you?"; var patt1=/hello|you/g; c onsole.log(str.match(patt1));
. Finds single characters except newlines and line terminators.
var str="That's hot!"; var patt1=/h.t/g; document.write(str.match(patt1));
w Find word characters (letters, numbers, underscore).
var str="Give 100%!"; var patt1=/\w/g; document.write(str.match(patt1));
W Find non-word characters.
var str="Give 100%!"; var patt1=/\W/g; document.write(str.match(patt1));
d Find numbers.
var str="Give 100%!"; var patt1=/\d/g; document.write(str.match(patt1));
D Find non-numeric characters.
var str="Give 100%!"; var patt1=/\D/g; document.write(str.match(patt1));
s Find whitespace characters (space, tab, line feed, carriage return).
var str="Is this all there is?"; var patt1=/\s/g; document.write(str.match(patt1));
S Find non-whitespace characters.
var str="Is this all there is?"; var patt1=/\S/g; document.write(str.match(patt1));
b matches word boundaries.
/bm/ matches the ‘m’ in “moon”;
/oob/ does not match ‘oo’ in “moon” because the ‘n’ after ‘oo’ is a word character;
/oonb/ matches ‘oon’ in “moon” because ‘oon’ is at the end of the string and is not followed by word characters;
var str="Hello jikexueyuan"; var patt1=/\bjikexueyuan/g; document.write(str.match(patt1));
B matches non-word boundaries.
n Find newlines.
var str="Hello Hunger.\n be a FE."; var patt1=/\n/g; document.write(str.search(patt1));
n+ matches any string containing at least one n.
var str="Hello HHunger! Hello World!"; var patt1=/H+/g; document.write(str.match(patt1)); var str="Hello Hunger! Hello World!"; var patt1=/\w+/g; document.write(str.match(patt1));
n* matches any string containing zero or more n.
var str="Hellooo Hunger! Hello World!"; var patt1=/lo*/g; document.write(str.match(patt1))
n? Matches any string containing zero or one n.
var str="1, 100 or 1000?"; var patt1=/10?/g; document.write(str.match(patt1));
n{X} matches a string containing X sequences of n.
var str="100, 1000 or 10000?"; var patt1=/\d{4}/g; document.write(str.match(patt1));
n{X,Y} matches a string containing X or Y sequences of n.
var str="100, 1000 or 10000?"; var patt1=/\d{3,4}/g; document.write(str.match(patt1));
n{X,} matches a string containing at least X sequences of n.
var str="100, 1000 or 10000?"; var patt1=/\d{3,}/g; document.write(str.match(patt1));
n$ matches any string ending in n.
var str="Is this his"; var patt1=/is$/g; document.write(str.match(patt1));
^n matches any string starting with n.
var str="Is this his"; var patt1=/^Is/g; document.write(str.match(patt1));
Common regular rules
Chinese characters: [u4e00-u9fa5]
Mobile phone number: 1[0-9]{10}
Email: (S)+[@]{1}(S)+[.]{1}(w)+