您好,登錄后才能下訂單哦!
這篇“JS中正則表達式全局匹配正斜杠的方法是什么”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“JS中正則表達式全局匹配正斜杠的方法是什么”文章吧。
語法:
必須寫在兩個反斜線之間 / 要匹配的規定/;
列如: var 變量名 = / 要匹配的規定/;
2.開頭以 ^ 這個符號開頭表示以什么開頭
列如:/^1/ 表示以1開頭
3、結尾以 $ 符號結束表示以什么結束
列如:/ 0$/ 以0結束
4、正則表達式后面跟字母的:
列如:/ /i; 不區分大小寫
列如:/ / g 執行全局匹配
i 大小寫不敏感 (不區分大小寫)
g 全局匹配
m 多 行匹配
5. w
w 反斜杠w的 (w是小寫)是匹配字母數字下劃線,不包括
W 反斜杠w (w是大寫)匹配除了字母數字下劃線以外的
包括換行符在內
6、d
d (小寫d)代表數字
D (大寫)帶表非數字
7、{x,Y}
{X,Y}x代表最少能有幾個 Y代表最大能有幾個;
8、[0-9]
[0-9] 代表只能輸入0到9的的數字
但是列如:
要匹配的東西: linx
正則式:lin[^ux]x
它是匹配不到linx的 但是可以匹配到lin x;
也就是說中間那一位必須有一個字符哪怕是空格
這里要注意: [^0-9] 中括號里面寫^是除掉里面的東西
如果^寫在外面則是以什么結尾
9、支持正則表達式的 String 對象的方法
1、search
var str="hellow word333333"
document.write(str.search(/world/))
它會返回數字 7
2、replace 替換與正則表達式匹配的字符串
replace('X','Y') X為要替換的內容 Y為將要替換上去的內容
var str="hellow word"
document.write(str.replace('word','ddd'))
結果輸出為:hellow ddd
3、split 把字符串分割為數組
var str="hellow word333333"
document.write(str.split('o'))
結果輸出:hell,w w,rd333333
4.語法:
正則表達式.test(要效驗的值)
正則式可以給了一個變量
要效驗的值也可以給了一個變量
在早期規定中,正則表達式用反斜杠字符 ("\") 來表示特殊格式或允許使用特殊字符而不調用它的特殊用法。這就與 Python 在字符串中的那些起相同作用的相同字符產生了沖突。
讓我們舉例說明,你想寫一個 RE 以匹配字符串 "\section",可能是在一個 LATEX 文件查找。為了要在程序代碼中判斷,首先要寫出想要匹配的字符串。接下來你需要在所有反斜杠和其它元字符前加反斜杠來取消其特殊意義,結果要匹配的字符串就成了"\\section"。 當把這個字符串傳遞給re.compile()時必須還是"\\section"。然而,作為Python的字符串實值(string literals)來表示的話,"\\section"中兩個反斜杠還要再次取消特殊意義,最后結果就變成了"\\\\section"。
字符 | 階段 |
\section | 要匹配的字符串 |
\\section | 為 re.compile 取消反斜杠的特殊意義 |
"\\\\section" | 為"\\section"的字符串實值(string literals)取消反斜杠的特殊意義 |
簡單地說,為了匹配一個反斜杠,不得不在 RE 字符串中寫 '\\\\',因為正則表達式中必須是 "\\",而每個反斜杠在常規的 Python 字符串實值中必須表示成 "\\"。在 REs 中反斜杠的這個重復特性會導致大量重復的反斜杠,而且所生成的字符串也很難懂。
解決的辦法就是為正則表達式使用 Python 的 raw 字符串表示;在字符串前加個 "r" 反斜杠就不會被任何特殊方式處理,所以 r"\n" 就是包含"\" 和 "n" 的兩個字符,而 "\n" 則是一個字符,表示一個換行。正則表達式通常在 Python 代碼中都是用這種 raw 字符串表示。
常規字符串 | Raw 字符串 |
"ab*" | r"ab*" |
"\\\\section" | r"\\section" |
"\\w+\\s+\\1" | r"\w+\s+\1" |
一旦你有了已經編譯了的正則表達式的對象,你要用它做什么呢?`RegexObject` 實例有一些方法和屬性。這里只顯示了最重要的幾個,如果要看完整的列表請查閱 Python Library Reference
方法/屬性 | 作用 |
match() | 決定 RE 是否在字符串剛開始的位置匹配 |
search() | 掃描字符串,找到這個 RE 匹配的位置 |
findall() | 找到 RE 匹配的所有子串,并把它們作為一個列表返回 |
finditer() | 找到 RE 匹配的所有子串,并把它們作為一個迭代器返回 |
如果沒有匹配到的話,match() 和 search() 將返回 None。如果成功的話,就會返回一個 `MatchObject` 實例,其中有這次匹配的信息:它是從哪里開始和結束,它所匹配的子串等等。
以上就是關于“JS中正則表達式全局匹配正斜杠的方法是什么”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。