詳解JS正則replace的使用方法
詳解JS正則replace的使用方法
原文地址:http://www.jb51.net/article/80544.htm
在講replace的高階應用之前,我們先簡單梳理一下JS正則中的幾個重要的知識點,以幫助你對基礎知識的回顧,然後再講解JS正則表示式在replace中的使用,以及常見的幾個經典案例。
一、正則表示式的建立
JS正則的建立有兩種方式: new RegExp() 和 直接字面量。
?1 2 3 4 5 |
//使用RegExp物件建立
var
regObj =
new
RegExp(
"(^\s+)|(\s+$)"
,
"g"
);
//使用直接字面量建立 var
regStr = /(^\s+)|(\s+$)/g;
|
其中 g 表示全文匹配,與之相關的還有 i 和m,i 表示匹配時忽略大小寫,m 表示多行匹配,如果多個條件同時使用時,則寫成:gmi
二、()、[]、{} 的區別
() 的作用是提取匹配的字串。表示式中有幾個()就會得到幾個相應的匹配字串。比如 (\s+) 表示連續空格的字串。
[]是定義匹配的字元範圍。比如 [a-zA-Z0-9] 表示字元文字要匹配英文字元和數字。
{}一般用來表示匹配的長度,比如 \d{3} 表示匹配三個空格,\d[1,3]表示匹配1~3個空格。
三、^ 和 $
^ 匹配一個字串的開頭,比如 (^a) 就是匹配以字母a開頭的字串
$ 匹配一個字串的結尾,比如 (b$) 就是匹配以字母b結尾的字串
^ 還有另個一個作用就是取反,比如[^xyz] 表示匹配的字串不包含xyz
需要注意的是:如果^出現在[]中一般表示取反,而出現在其他地方則是匹配字串的開頭
四、\d \s \w .
\d 匹配一個非負整數, 等價於 [0-9]
\s 匹配一個空白字元
\w 匹配一個英文字母或數字,等價於[0-9a-zA-Z]
. 匹配除換行符以外的任意字元,等價於[^\n]
五、* + ?
* 表示匹配前面元素0次或多次,比如 (\s*) 就是匹配0個或多個空格
+ 表示匹配前面元素1次或多次,比如 (\d+) 就是匹配由至少1個整陣列成的字串
? 表示匹配前面元素0次或1次,相當於{0,1} ,比如(\w?) 就是匹配最多由1個字母或數字組成的字串
六、test 、match
前面的大都是JS正則表示式的語法,而test則是用來檢測字串是否匹配某一個正則表示式,如果匹配就會返回true,反之則返回false
?1 2 3 |
/\d+/.test(
"123"
) ;
//true
/\d+/.test(
"abc"
) ;
//false
|
match是獲取正則匹配到的結果,以陣列的形式返回
"186a619b28".match(/\d+/g); // ["186","619","28"]
以上基本上是我經常用到的基礎知識,不是很全面,不常用的就沒有列出來,因為列出來也只是擺設,反而混淆主次!
七、replace
replace 本身是JavaScript字串物件的一個方法,它允許接收兩個引數:
replace([RegExp|String],[String|Function])
第1個引數可以是一個普通的字串或是一個正則表示式
第2個引數可以是一個普通的字串或是一個回撥函式
如果第1個引數是RegExp, JS會先提取RegExp匹配出的結果,然後用第2個引數逐一替換匹配出的結果
如果第2個引數是回撥函式,每匹配到一個結果就回調一次,每次回撥都會傳遞以下引數:
?1 2 3 4 5 6 7 |
result: 本次匹配到的結果
$1,...$9: 正則表示式中有幾個(),就會傳遞幾個引數,$1~$9分別代表本次匹配中每個()提取的結果,最多9個
offset:記錄本次匹配的開始位置
source:接受匹配的原始字串
|
以下是replace和JS正則搭配使用的幾個常見經典案例:
(1)實現字串的trim函式,去除字串兩邊的空格
?
1
相關推薦詳解JS正則replace的使用方法詳解JS正則replace的使用方法 原文地址:http://www.jb51.net/article/80544.htm 在講replace的高階應用之前,我們先簡單梳理一下JS正則中的幾個重要的知識點,以幫助你對基礎知識的回顧,然後再講解JS正則表示式在re 詳解js正則表達式語法介紹技術 invalid 我想 不同 小結 小括號 字符 rip 空字符串 1. 正則表達式規則 1.1 普通字符 字母、數字、漢字、下劃線、以及後邊章節中沒有特殊定義的標點符號,都是"普通字符"。表達式中的普通字符,在匹配一個字符串的時候,匹配與之相同的一個字符。 詳解 Python3 正則表達式(二)tps 數字 HERE art lock style 普通 則表達式 通過 上一篇:詳解 Python3 正則表達式(一) 本文翻譯自:https://docs.python.org/3.4/howto/regex.html 博主對此做了一些批註和修改 ^_^ 使 詳解JMeter正則表示式提取器應用場景: 在一個執行緒組中,B請求需要使用A請求返回的資料,也就是常說的關聯,將上一個請求的響應結果作為下一個請求的引數,則需要對A請求的響應報文使用後置處理器,其中最方便最常用的就是正則表示式提取器了。 正則表示式提取器: 允許使用者從作用域內的sampler請求的伺服器響應結果中通過正則 詳解JavaScript正則表示式(三)本文是JavaScript正則表示式的第三篇文章,若是對正則表示式陌生的話,可以看我之前的兩篇文章。 詳解正則表示式(一) 詳解正則表示式(二) 貪婪模式和非貪婪模式 1、貪婪模式 在匹配成功的情況下,儘可能多的匹配。而JavaScript預設的就是貪婪模式。話不多說,直 詳解JavaScript正則表示式(一)RegExp 物件表示正則表示式,它是對字串執行模式匹配的強大工具 這篇文章主要是對正則表示式有一個全面的瞭解,學完之後,當再次看到一些比較複雜的正則表示式的時候就可以逐步分析了。當然,再加上一段時間的練習,相信你自己也可以學會怎麼使用正則表示式的。 1、例項化正則表示式的兩種方 JS——正則詳解序列 屬性 小寫 無效 表示 代碼 split方法 while循環 混淆 1.正則匹配規則字面量字符串匹配元字符:點字符(.) 匹配 除回車(\r)、換行(\n) 、行分隔符(\u2028)和段分隔符(\u2029)以外的所有字符。 位置字符(^ / $) ^/$ js 正則表達式1;(基本語法、test方法 exec方法 replace方法)方法 忽略大小寫 基本語法 ext exp 劃線 nbsp repl 獲取 //語法1 var zz= new RegExp(‘aaa‘,‘igm‘); //初始化一個RegExP對象 $(‘#scn‘).text(zz.tes js 正則表示式詳解開篇,還是得說說 ^ 和 $ 他們是分別用來匹配字串的開始和結束,以下分別舉例說明 "^The": 開頭一定要有"The"字串; "of despair$": 結尾一定要有"of despair" 的字串; 那麼, js正則表示式 URL格式匹配詳解0、URL格式 protocol :// hostname[:port] / path / [;parameters][?query]#fragment [;parameters]沒見過 這裡就不做相關匹配了 1、程式碼及執行結 js正則關鍵字詳解<!DOCTYPE HTML> <html> <head> <title>please enter your title</ js 正則替換 replace()方法replace方法的語法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字串(string),reExp可以是正則表示式物件(RegExp)也可以是字串(string),replaceText是替代查詢到的字串。。為了 js正則表示式在(replace()方法)有字串var=’abc455efgabcab’ 去掉字串中的a、b、c字元,形成結果345efg <script type="text/javascript"> var str='abc345efgabcab'; js正則驗證數字的方法字符 ack xxxxxxxx clas cti validate 浮點 則表達式 pre 正則驗證數字的方法: <script type="text/javascript"> function validate(){ var reg js正則表達式test方法、exec方法與字符串search方法區別lac exec js正則 pan asc 一個數 gobject school match 1.正則表達式test方法 test() 方法用於檢測一個字符串是否匹配某個模式 返回值: 如果字符串 string 中含有與 RegExpObject 匹配的文本,則返回 JS正則截取兩個字符串之間及字符串前後內容的方法var 正則 str 字符串 alert bbf js正則 aaa 之間 JS正則截取兩個字符串之間及字符串前後內容的方法 1、js截取兩個字符串之間的內容: var str = "aaabbbfff";str = str.match(/aaa(\S*) JS正則test()方法分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!   詳解JS獲取HTML DOM元素的8種方法詳解JS獲取HTML DOM元素的8種方法 什麼是HTML DOM 文件物件模型(Document Object Model),是W3C組織推薦的處理可擴充套件置標語言的標準程式設計介面。簡單理解就是HTML DOM 是關於如何獲取、修改、新增或刪除 HTML 元素的標準。我們用Ja js正則的一些用法 方法//////////////String物件 String.search() 用於檢索字串中指定的子字串,或檢索與政策表示式相匹配的子字串,並返回子串的起始位置。 檢索就是獲取 下標 位置 找不到就是 -1 var str = "Visit Runoob!"; v JS正則表示式和replace二三事引言 最近一段時間認真研究了一下正則表示式,這東西這是入門容易,越學越難,奇幻怪異的寫法,各種變數配比。之前只是用的時候在網上現找,但是沒想到,正則的水這麼深,不去深入瞭解一下,還是不行,否則寫出來的正則表示式非但不能完成任務,還有可能調入回溯陷阱,這次是搞明白了捕獲應用和 |