js中的正規表示式

2021-09-10 16:53:32 字數 2539 閱讀 4020

正規表示式 是乙個物件

功能和字串一樣,都是用來對字串進行【模式匹配】和【文字檢索】與【替換】。

正規表示式能替代字串去做一些複雜的操作,而且做的比字串還要漂亮

【注】正規表示式可以理解成乙個super string。

正規表示式宣告

1、通過new來宣告

var box = new regexp("box", "ig");

第乙個引數 傳入的是生成正規表示式的字串

第二個引數 傳入修飾符

i 忽略大小寫

g 全域性匹配

m 換行匹配

2、省略new

var box = regexp("box", "ig");

3、可以通過正則常量賦值

var box = /box/ig;

正規表示式的方法

test

格式:正則.test(字串)

功能:在字串中匹配正則是否存在。

返回值:如果匹配成功返回true,否則返回false

exec

格式:正則.exec(字串)

功能:在字串中匹配正則是否存在。

返回值:如果匹配成功,返回,匹配成功字串的陣列,

如果匹配失敗返回null。

在字串的函式中使用正則

match()

格式:字串.match(正則)

功能:在字串中匹配正則是否存在。

返回值:如果匹配成功,返回匹配成功字串的陣列,

如果匹配失敗返回null。

例:

var str = 'this is a box';

var box = /box/i;

alert(str.match(box));

repalce 字串替換

格式:str.replace(oldstr/正則, newstr);

返回值:替換完成的新字串。

例:

var str = "how are are are you";

var box = /are/gi;

var newstr = str.replace(box, "old are");

alert(newstr);

search 通過內容查詢下標

格式:字串.search(正則);

返回值:查詢到的下標

-1 沒有查詢到

例:

var str = "how are are are are you";

var box = /are/i;

alert(str.search(box));

split 通過分割符將字串分割成陣列

功能:字串.split(分割符/正則)

返回值:陣列,放著用分割符分割完畢的子串。

例:

var str = "iaamaboy";

var arr = str.split(/a/i);

alert(arr);

元字元:正規表示式元字元是包含特殊含義的字元。它們有一些特殊功能,可以控制匹配模式的方式。

單個字元的元字元

在這裡插入**片

.             匹配換行符以外的任意字元

[a-z] 限定匹配單個字元的範圍

[a-za-z0-9_] 限定匹配單個字元的範圍是數字、字母、下劃線

[^0-9] 限定匹配單個字在這裡插入**片符的範圍,除這個範圍外的字元

\w 限定匹配單個字元的範圍是數字、字母、下劃線

\w [^a-za-z0-9_] 限定匹配單個字元的範圍是非數字、字母、下劃線

\d 限定匹配單個字元的範圍是數字

\d 限定匹配單個字元的範圍是非數字

例:var str = "gaogle";

var box = /g\dogle/;

alert(box.test(str));

空白字元

\s 可以匹配乙個任意的空白字元

\s 可以匹配乙個任意的非空白字元

錨字元^ 限定行首匹配

$ 限定行尾匹配

【注】如果同時加行首和行尾,那麼字串只能是這個正則。

重複字元(x代表的是單個字元)

x? 匹配1個或者0個x字元

x+ 匹配至少乙個x字元

x* 匹配任意個x字元

x 匹配最多n個x字元,最少m個x字元

x匹配m個字元

(abc)+ 用小括號括起來多個字元,那麼這多個字元,會被當做乙個字元匹配

正規表示式的書寫

例:

if(/^\d+$/.test(ovalue) || /^[a-z]+$/.test(ovalue) || /^[a-z]+$/.test(ovalue))else if(/\d/.test(ovalue) && /[a-z]+/.test(ovalue) && /[a-z]+/.test(ovalue))

js中的正規表示式

d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 正浮點數 d d 0 0 非正浮點數 負浮點數 ...

JS中的正規表示式

在電腦科學中,是指乙個用來描述或者匹配一系列符合某個語法規則的字串的單個字串。在很多文字編輯器或其他工具裡,正規表示式通常被用來檢索或替換那些符合某個模式的文字內容。正規表示式驗證一系列有規律的表示式 match 和replace replace 方法返回根據正規表示式進行文字替換後的字串的複製。語...

JS中的正規表示式

正規表示式是一種可以用於模式匹配和替換的強有力的工具 1.基本語法 1 元字元 以及 元字元規定其前導字元必須在目標物件中連續出現一次或多次 fo 因為上述正規表示式中包含 元字元,表示可以與目標物件中的 fool fo 或者 football 等在字母f後面連續出現乙個或多個字母o的字串相匹配。元...