這篇文章主要介紹了一次記住JavaScript的6個正規表示式方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
首先6這個具象的數字可以幫助我們整體記憶了。
範圍
js中有兩個類別可以讓正規發揮作用
#建立
var re = /ab+c/
方式一:正規表示字面量,這種直接是常數的表示用法可以讓js解析器提高效能
var re = new RegExp('ab+c')
方式二:建構函數,這種方式可以在runtime的時候動態決定正規是什麼,更靈活
常用特殊字元
來記憶一些常用特殊字符,這個是正則本身的範疇了,是不是總覺得記不住?其實我也記不住,每次都是去搜尋和online驗證來完成一些任務。我也困惱過,其實最後還是因為自己寫的少吧,唯手熟爾。 。 。以下的總結不寫具體內容,只列出具體特殊字符和分類,可以嘗試說出他們的意義,我覺得比看表格更有利於記憶。 。 。
匹配量的:* ? {n} {n,} {n,m} .
符合位置的:^ $
符合並且需要支援分組的時候需要括號來包裹:(匹配的模式)
符合條件的:|
匹配非集合的:[^]
還有大量的由\和字母組成的特殊意義的匹配模式,這些用到的時候查詢就可以了,沒有必要記住,其實我是記不住。 。 。 範例範例是最好的老師。 。 。 。例子來自MDN
我想得到匹配後的數組var myRe = /d(b+)d/g; myRe.exec('cdbbdbsdbdbz') // ["dbbd", "bb", index: 1, input: "cdbbdbsdbdbz"] myRe.exec('cdbbdbsdbdbz') // ["dbd", "b", index: 7, input: "cdbbdbsdbdbz"] myRe.exec('cdbbdbsdbdbz') // null注意對於每個正則對象的exec每次調用都只返回一個匹配,如果需要拿到全部匹配就需要while循環獲取,循環結束標誌是返回值為null
'cdbbdbsdbdbz'.match(/d(b+)d/g) // ["dbbd", "dbd"] 'cdbbdbsdbdbz'.match(/d(b+)d/) // ["dbbd", "bb", index: 1, input: "cdbbdbsdbdbz"]string的match挺奇怪的,如果是global匹配則出所有匹配的數組,如果不是,則出第一個匹配的字串,以及相應的捕獲內容
var str = 'hello world!'; var result = /^hello/.test(str); // true 'cdbbdbsdbdbz'.search(/d(b+)d/) // 1 'xxx'.search(/d(b+)d/) // -1 没有匹配 var names = 'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand '; var re = /\s*;\s*/; var nameList = names.split(re); // [ "Harry Trump", "Fred Barney", "Helen Rigby", "Bill Abel", "Chris Hand " ] var re = /apples/gi; var str = 'Apples are round, and apples are juicy.'; var newstr = str.replace(re, 'oranges'); // // oranges are round, and oranges are juicy.
我想得到是否匹配
var str = 'hello world!'; var result = /^hello/.test(str); // true
我只想得到第一次匹配的位置
'cdbbdbsdbdbz'.search(/d(b+)d/) // 1 'xxx'.search(/d(b+)d/) // -1 没有匹配我想按照匹配拆分字串
var names = 'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand '; var re = /\s*;\s*/; var nameList = names.split(re); // [ "Harry Trump", "Fred Barney", "Helen Rigby", "Bill Abel", "Chris Hand " ]我想按照匹配覆蓋字串
var re = /apples/gi; var str = 'Apples are round, and apples are juicy.'; var newstr = str.replace(re, 'oranges'); // // oranges are round, and oranges are juicy.這個replace方法的用法著實比較多,只放了最基礎用法,當有需求的時候再查就好了,整體有概念了再實踐比強行記憶要好吧~相關文章:#########在vue中如何解決無法動態修改jqgrid元件url位址的問題############在React中使用Native如何實作自訂下拉刷新上拉載入的清單#######
以上是JavaScript的6種正規表示式(詳細教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

javaandjavascriptaredistinctlanguages:javaisusedforenterpriseandmobileapps,while javascriptifforInteractiveWebpages.1)JavaisComcompoppored,statieldinglationallyTypted,statilly tater astrunsonjvm.2)

JavaScript核心數據類型在瀏覽器和Node.js中一致,但處理方式和額外類型有所不同。 1)全局對像在瀏覽器中為window,在Node.js中為global。 2)Node.js獨有Buffer對象,用於處理二進制數據。 3)性能和時間處理在兩者間也有差異,需根據環境調整代碼。

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python和JavaScript的主要區別在於類型系統和應用場景。 1.Python使用動態類型,適合科學計算和數據分析。 2.JavaScript採用弱類型,廣泛用於前端和全棧開發。兩者在異步編程和性能優化上各有優勢,選擇時應根據項目需求決定。

選擇Python還是JavaScript取決於項目類型:1)數據科學和自動化任務選擇Python;2)前端和全棧開發選擇JavaScript。 Python因其在數據處理和自動化方面的強大庫而備受青睞,而JavaScript則因其在網頁交互和全棧開發中的優勢而不可或缺。

Python和JavaScript各有優勢,選擇取決於項目需求和個人偏好。 1.Python易學,語法簡潔,適用於數據科學和後端開發,但執行速度較慢。 2.JavaScript在前端開發中無處不在,異步編程能力強,Node.js使其適用於全棧開發,但語法可能複雜且易出錯。

javascriptisnotbuiltoncorc; sanInterpretedlanguagethatrunsonenginesoftenwritteninc.1)JavascriptwasdesignedAsignedAsalightWeight,drackendedlanguageforwebbrowsers.2)Enginesevolvedfromsimpleterterpretpretpretpretpreterterpretpretpretpretpretpretpretpretpretcompilerers,典型地,替代品。

JavaScript可用於前端和後端開發。前端通過DOM操作增強用戶體驗,後端通過Node.js處理服務器任務。 1.前端示例:改變網頁文本內容。 2.後端示例:創建Node.js服務器。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3漢化版
中文版,非常好用

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)