在本教程中,我們將學習如何使用 JavaScript RegExp 執行不區分大小寫的匹配。
正則表達式可以通過兩種方式聲明 –
- 使用正則表達式文字,以斜杠開頭和結尾,并且
圖案放置在兩者之間。
調用 RegExp 對象構造函數,該構造函數采用
用于創建正則表達式的參數。
用戶可以使用以下語法來創建正則表達式。
語法
//Using a regular expression literal const regex = /tutorial/i //Using RegExp constructor const regex2 = new RegExp('tutorial', 'i')
登錄后復制
在上面的語法中,創建正則表達式來匹配單詞“tutorial”,修飾符“i”表示它可以匹配具有這些字符的任何子字符串,無論其大小寫(“TuToRial”,“Tutorial”,等)。
使用字符串 match() 方法
match() 方法是 JavaScript 中 String 對象的一部分。它用于將字符串與 RegExp 或正則表達式進行匹配。
用戶可以按照以下語法使用 match() 方法與 JavaScript RegExp 執行不區分大小寫的匹配。
語法
text.match(regex)
登錄后復制
在上面的語法中,“text”是一個需要使用正則表達式檢查的字符串。 “regex”是正則表達式模式。
參數
-
regex – 它是正則表達式或將轉換為正則表達式的字符串。
返回類型
-
返回所有匹配項的數組,如果未找到匹配項,則返回 null。
示例
在下面給出的示例中,我們使用 match() 方法來執行不區分大小寫的匹配。我們正在檢查單擊按鈕時的匹配方法結果并將其輸出。
<html> <body> <h4>Performming Case Insensitive Matching with RegExp using <i> match() </i> method</h4> <button onclick="check()">Check</button> <p>Original Text: Welcome to Tutorialspoint</p> <p>Text To Match: tutorial </p> <p id="output"></p> <script> const text='Welcome to Tutorialspoint' const regex=/tutorial/i function check(){ //Using the match method let result=text.match(regex) document.getElementById('output').innerHTML='Mached Text: '+result } </script> </body> </html>
登錄后復制
上面的輸出顯示 match() 方法返回匹配的子字符串“Tutorial”。
使用字符串 search() 方法
search() 方法是 JavaScript 中 String 對象的一部分。它用于根據 RegExp 或正則表達式搜索字符串的子字符串。
用戶可以按照以下語法使用 search() 方法與 JavaScript RegExp 進行不區分大小寫的匹配。
語法
text.search(regex)
登錄后復制
在上面的語法中,“text”是一個字符串,“regex”是正則表達式模式。
參數
-
regex – 它是正則表達式或將轉換為正則表達式的字符串。
返回類型
-
返回第一個匹配的位置,如果未找到匹配,則返回 -1。
示例
在下面給出的示例中,我們使用了 search() 方法,并在單擊按鈕時檢查 search() 方法的結果并將其輸出。
<html> <body> <h4>Performming Case Insensitive Matching with RegExp using <i> search() </i> method.</h4> <p>Text: Welcome to Tutorialspoint</p> <p>Text to Match: tutorial</p> <button onclick="check()">Check</button> <p id="output"></p> <p><b>Note:</b>The search() method returns the position of first match</p> <script> const text='Welcome to Tutorialspoint' const regex=/tutorial/i function check(){ //Using search method let result=text.search(regex) document.getElementById('output').innerHTML='Result: '+result } </script> </body </html>
登錄后復制
在上面的輸出中,用戶可以看到 search() 方法返回子字符串“Tutorial”的開始位置。
使用 RegExp test() 方法
test() 方法是 JavaScript 中 RegExp 對象的一部分。它用于根據 RegExp 或正則表達式測試字符串。
用戶可以按照以下語法使用 test() 方法與 JavaScript RegExp 進行不區分大小寫的匹配。
語法
regex.test(text)
登錄后復制
在上面的語法中,“text”是一個需要使用正則表達式檢查的字符串。 “regex”是正則表達式模式。
參數
-
文本/字符串 – 這是需要測試的文本或字符串。
返回類型
-
如果沒有找到匹配則返回 false,否則返回 true。
示例
在下面給出的示例中,我們使用了 test() 方法。
<html> <body> <p>Performming Case Insensitive Matching with JavaScript RegExp using <i> test() </i> method</p> <p>Text: Welcome to Tutorialspoint</p> <p>Text to Match: tutorial</p> <button onclick="check()">Check</button> <p id="output"></p> <p><b>Note:</b> The test() method returns true if there is a match, else returns false.</p> <script> const text = 'Welcome to Tutorialspoint' const regex = /tutorial/i function check() { //Using the test method let result = regex.test(text) document.getElementById('output').innerHTML = 'Result: ' + result } </script> </body> </html>
登錄后復制
在上面的輸出中,用戶可以看到 test() 方法返回 true,因為文本中存在“Tutorial”子字符串。
使用 RegExp exec() 方法
exec() 方法是 JavaScript 中 RegExp 對象的一部分。它用于將字符串與 RegExp 或正則表達式進行匹配。
用戶可以按照以下語法使用 exec() 方法與 JavaScript RegExp 執行不區分大小寫的匹配。
語法
regex.exec(text)
登錄后復制
在上面的語法中,“text”是一個字符串,“regex”是正則表達式模式。
參數
-
Text/string – 需要匹配的文本或字符串。
返回類型
-
返回所有匹配項的數組,如果未找到匹配項,則返回 null。
示例
在下面給出的示例中,我們使用了 exec() 方法。
<html> <body> <p>Performming Case Insensitive Matching with JavaScript RegExp using <i> exec() </i> method</p> <button onclick="check()">Check</button> <p>Text: Welcome to Tutorialspoint</p> <p id="output"></p> <script> const text='Welcome to Tutorialspoint' const regex=/tutorial/i function check(){ //Using the exec method let result=regex.exec(text) document.getElementById('output').innerHTML='Result: '+result } </script> </body> </html>
登錄后復制
上面的輸出顯示 exec() 方法返回匹配的子字符串“Tutorial”。
在本教程中,我們討論了使用 RegExp 執行不區分大小寫匹配的四種方法。前兩個方法是字符串 match() 和 search() 方法。另外兩個方法是 RegExp test() 和 exec() 方法。
以上就是如何使用JavaScript RegExp進行不區分大小寫的匹配?的詳細內容,更多請關注www.92cms.cn其它相關文章!