欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VUE正則表達(dá)式用法全集整理(推薦!)

 更新時(shí)間:2024年02月19日 09:41:29   作者:視圖猿人  
正則表達(dá)式是由一些特定的字符組成,代表一個(gè)規(guī)則,可以用來檢驗(yàn)數(shù)據(jù)格式是否合法,也可以在一段文本中查找滿足要求的內(nèi)容,這篇文章主要給大家介紹了關(guān)于VUE正則表達(dá)式用法的相關(guān)資料,需要的朋友可以參考下

一、正則表達(dá)式的基本語法

var expression = /pattern(模式)/flags(標(biāo)識(shí)符);

二、如何創(chuàng)建正則表達(dá)式

1.字面量創(chuàng)建

代碼如下:

//匹配字符串中所有“at”的實(shí)例
var e = /at/g;
//匹配第一個(gè)“bat”或“cat”,不區(qū)分大小寫
var e = /[bc]at/i;

2.RegExp構(gòu)造函數(shù)創(chuàng)建

RegExp構(gòu)造函數(shù)接收兩個(gè)參數(shù),第一個(gè)參數(shù)是要匹配的字符串模式,第二個(gè)是可選的標(biāo)識(shí)符字符串。 代碼如下:

//匹配第一個(gè)“bat”或“cat”,不區(qū)分大小寫
var e = new RegExp("[bc]at","i");

兩種創(chuàng)建方式的比較

在ECMAScript3中,字面量創(chuàng)建和RegExp對(duì)象創(chuàng)建區(qū)別是:字面量創(chuàng)建始終會(huì)共享同一個(gè)RegExp實(shí)例,而構(gòu)造函數(shù)創(chuàng)建的每一個(gè)RegExp實(shí)例都是一個(gè)新實(shí)例 ECMAScript5明確規(guī)定:使用正則表達(dá)式字面量必須像直接調(diào)用RegExp構(gòu)造函數(shù)一樣,每次都創(chuàng)建新的RegExp實(shí)例。IE9+、Firefox 4+和Chrome都做出了修改。

需要注意的是,正則表達(dá)式中的元字符必須轉(zhuǎn)義。元字符有:

( [ { \ ^ $ | ) ? * + . ] }

例如:

//匹配第一個(gè)“[bc]at”,不區(qū)分大小寫
var e = /\[bc\]at/i;
//在RegExp構(gòu)造函數(shù)創(chuàng)建時(shí),元字符需要雙重on轉(zhuǎn)義
var e = new RegExp("\\[bc\\]at","i");

三、RegExp實(shí)例的屬性和方法

RegExp 實(shí)例屬性

  • ignoreCase 返回布爾值,表示RegExp對(duì)象是否具有標(biāo)志 i
  • global 返回布爾值,表示RegExp對(duì)象是否具有表示 g
  • multiline 返回布爾值,表示RegExp對(duì)象是否具有表示 m
  • lastIndex 一個(gè)整數(shù),標(biāo)識(shí)開始下一次匹配的字符位置
  • soure 返回正則表達(dá)式的原文本 (不包括反斜杠)
  • i 執(zhí)行對(duì)大小寫不敏感的匹配
  • g 執(zhí)行全局匹配 (查找所有匹配而非在找到第一個(gè)匹配后停止)
  • m 執(zhí)行多行匹配

字符類匹配

  • [...]查找方括號(hào)之間的任何字符
  • [^..]查找任何不在方括號(hào)之間的字符
  • [a-z]查找任何從小寫a到小寫z的字符
  • [A-Z]查找任何從大寫A到大寫Z的字符
  • [A-z]查找任何從大寫A到小寫z的字符
  • . 查找單個(gè)字符,除了換行和行結(jié)束符
  • \w 查找單詞字符,等價(jià)于 [a-zA-Z0-9]
  • \W 查找非單詞字符,等價(jià)于 [^a-zA-Z0-9]
  • \s 查找空白字符
  • \S 查找非空白字符
  • \d 查找數(shù)字,等價(jià)于[0-9]
  • \D 查找非數(shù)字字符,等價(jià)于[^0-9]
  • \b 匹配單詞邊界
  • \r 查找回車符
  • \t 查找制表符
  • \0 查找NULL字符
  • \n 查找換行符

重復(fù)字符匹配

  • {n,m}匹配前一項(xiàng)至少n次,但不能超過m次
  • {n,}匹配前一項(xiàng)n次或更多次
  • {n}匹配前一項(xiàng)n次
  • n?匹配前一項(xiàng)0次或者1次,也就是說前一項(xiàng)是可選的,等價(jià)于{0,1}
  • n+匹配前一項(xiàng)一次或多次,等價(jià)于{1,}
  • n*匹配前一項(xiàng)0次或多次,等價(jià)于{0,}
  • n$匹配任何結(jié)尾為n的字符串
  • ^n匹配任何開頭為n的字符串
  • ?=n匹配任何其后緊接指定字符串n的字符串
  • ?!n匹配任何其后沒有緊接指定字符串n的字符串

匹配特定數(shù)字

  • ^[1-9]\d*$ 匹配正整數(shù)
  • ^-[1-9]\d*$ 匹配負(fù)整數(shù)
  • ^-?[0-9]\d*$ 匹配整數(shù)
  • ^[1-9]\d*|0$ 匹配非負(fù)整數(shù)(正整數(shù) + 0)
  • ^-[1-9]\d*|0$ 匹配非正整數(shù)(負(fù)整數(shù) + 0)
  • ^[1-9]\d*.\d*|0.\d*[1-9]\d*$ 匹配正浮點(diǎn)數(shù)
  • ^-([1-9]\d*.\d*|0.\d*[1-9]\d*)$ 匹配負(fù)浮點(diǎn)數(shù)
  • ^-?([1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0)$ 匹配浮點(diǎn)數(shù)
  • ^[1-9]\d*.\d*|0.\d*[1-9]\d*|0?.0+|0$ 匹配非負(fù)浮點(diǎn)數(shù)(正浮點(diǎn)數(shù) + 0)
  • ^(-([1-9]\d*.\d*|0.\d*[1-9]\d*))|0?.0+|0$ 匹配非正浮點(diǎn)數(shù)(負(fù)浮點(diǎn)數(shù) + 0)

四、正規(guī)則表達(dá)式有哪些方法?

1.exec()方法

exec()方法為模式的捕獲組而設(shè)計(jì)的,該方法接收一個(gè)參數(shù),即要匹配的字符串,該方法返回一個(gè)包含捕獲組的數(shù)組Array,如果沒有捕獲組匹配返回null。返回的數(shù)組Array中,第一項(xiàng)是與整個(gè)模式匹配的字符串,其他項(xiàng)是與模式中的捕獲組匹配到的字符串。數(shù)組Array中還有兩個(gè)參數(shù)input(返回要匹配的字符串),index(返回匹配項(xiàng)在字符串中的位置) 模式中的捕獲組就是指圓括號(hào)中的字符串。

例如:

var e = /do(es)(d)?/;
e.exec("ssdoesdo");
/**
array[0]:"doesd",
array[1]:"es",
array[2]:"d",
index:2,
input:"ssdoesdo"
**/

例子中,模式中包含兩個(gè)捕獲組”es”、”d”,即圓括號(hào)中的字符串。

2.test()方法

test()方法檢索字符串中指定的值,該方法接收一個(gè)參數(shù),如果字符串中含有與模式匹配的文本則返回true,否則返回false。

例如:

var e = /do(es)?/;
e.test("doesdo");
//true

如果正則表達(dá)式中帶有g(shù)標(biāo)識(shí)符,則每一次調(diào)用test方法和exec方法都從上一次匹配結(jié)束位置開始匹配;如果正則表達(dá)式中沒有g(shù)標(biāo)識(shí)符,則每次調(diào)用方法都從字符串起始位置開始匹配。

例如:

var e = /do(es)?/g;
e.exec("ssdoesdoesdoes");
/*
array[0]:"does",
array[1]:"es",
index:2,
input:"ssdoesdoesdoes"
*/
e.exec("ssdoesdoesdoes");
/*
array[0]:"does",
array[1]:"es",
index:6,
input:"ssdoesdoesdoes"
*/
var e = /do(es)?/g;
console.log(e.test("ssdoesdoesdoes"));
console.log(e.lastIndex);
//true
//6
console.log(e.test("ssdoesdoesdoes"));
console.log(e.lastIndex);
//true
//10
console.log(e.test("ssdoesdoesdoes"));
console.log(e.lastIndex);
//true
//14
var e = /do(es)?/;
console.log(e.test("ssdoesdoesdoes"));
console.log(e.lastIndex);
//true
//0
console.log(e.test("ssdoesdoesdoes"));
console.log(e.lastIndex);
//true
//0

五、常用的幾種正則校驗(yàn)表達(dá)式

1.匹配手機(jī)號(hào)

/^1[34578]\d{9}$/

2.匹配正整數(shù)

/^[0-9]\d*$/

3.匹配ip地址

/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/

4.匹配郵箱

/^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/

5.匹配身份證

/^(\d{14}|\d{17})(\d|[xX])$/

其他:

el-input中不允許輸入特殊字符

const handleInput = (data: any) => {
    data.name = data.name.replace(
        /[-~#()|【-】· (){}+=*^&%$@!.,,。<>;::;‘'“”、'"?`\\/\\]/g,
        '',
    );
};

總結(jié) 

到此這篇關(guān)于VUE正則表達(dá)式的文章就介紹到這了,更多相關(guān)VUE正則表達(dá)式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue中的組件詳談

    Vue中的組件詳談

    這篇文章主要介紹了Vue的組件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • Axios代理配置及封裝響應(yīng)攔截處理方式

    Axios代理配置及封裝響應(yīng)攔截處理方式

    這篇文章主要介紹了Axios代理配置及封裝響應(yīng)攔截處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 解決Vue頁面固定滾動(dòng)位置的處理辦法

    解決Vue頁面固定滾動(dòng)位置的處理辦法

    本篇文章主要介紹了解決Vue固定滾動(dòng)位置的處理辦法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • vue3中使用ref獲取dom的操作代碼

    vue3中使用ref獲取dom的操作代碼

    ref在我們開發(fā)項(xiàng)目當(dāng)中很重要的,在?Vue?中使用?ref?可以提高代碼的可讀性和維護(hù)性,因?yàn)樗苯訕?biāo)識(shí)出了組件中需要操作的具體元素或組件實(shí)例,本文我將給大家?guī)淼氖莢ue3中用ref獲取dom的操作,文中有相關(guān)的代碼示例供大家參考,需要的朋友可以參考下
    2024-06-06
  • vue不用window的方式如何刷新當(dāng)前頁面

    vue不用window的方式如何刷新當(dāng)前頁面

    這篇文章主要介紹了vue不用window的方式如何刷新當(dāng)前頁面,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 關(guān)于element中el-cascader的使用方式

    關(guān)于element中el-cascader的使用方式

    這篇文章主要介紹了關(guān)于element中el-cascader的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue3解決跨域問題詳細(xì)代碼親測(cè)有效

    vue3解決跨域問題詳細(xì)代碼親測(cè)有效

    跨域,跨的是不同域,也就是協(xié)議或主機(jī)或或端口號(hào)不同造成的現(xiàn)象,本文給大家分享vue3解決跨域問題詳細(xì)代碼親測(cè)有效,感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • 基于Vue實(shí)例對(duì)象的數(shù)據(jù)選項(xiàng)

    基于Vue實(shí)例對(duì)象的數(shù)據(jù)選項(xiàng)

    下面小編就為大家?guī)硪黄赩ue實(shí)例對(duì)象的數(shù)據(jù)選項(xiàng)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • vue?cli使用iview自定義主題遇到的坑及解決

    vue?cli使用iview自定義主題遇到的坑及解決

    vue?cli使用iview自定義主題遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Vue3使用dataV報(bào)錯(cuò)問題的解決方法

    Vue3使用dataV報(bào)錯(cuò)問題的解決方法

    這篇文章主要為大家詳細(xì)介紹了Vue3中使用dataV報(bào)錯(cuò)問題的解決方法,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11

最新評(píng)論