使用JavaScript正則表示式查詢非數字字元
在本教程中,我們將學習如何使用JavaScript正則表示式查詢非數字字元。ASCII碼'A'是65,'a'是97,等等。現在,我們將檢查如何使用RegExp在給定文字中查詢非數字元素(\D)。
RegExp是一個物件,它指定用於對字串執行搜尋和替換操作或進行輸入驗證的模式。RegExp在ES1中引入,並被所有瀏覽器完全支援。
語法
非數字元素的語法是:
new RegExp("\D") or simply /\D/
/\D/,在ES1中引入。它被所有瀏覽器完全支援,例如Chrome、IE、Safari、Opera、FireFox和Edge。
RegExp具有修飾符,如g、i、m。“g”用於執行全域性匹配,“i”用於執行不區分大小寫的匹配,“m”用於執行多行匹配。
帶有修飾符的\D語法:
new RegExp("\D", "g") or simply /\D/g
查詢非數字字元的步驟
步驟1 - 定義一個包含一些非數字字元的字串。
步驟2 - 定義一個正則表示式以僅查詢數字。
步驟3 - 執行字串和正則表示式之間的匹配。
步驟4 - 顯示結果,即非數字字元。
示例
在下面的示例中,我們使用JavaScript中的match()方法和正則表示式查詢非數字字元。
<!DOCTYPE html>
<html>
<body>
<h2>Finding non-digit characters</h2>
<p>Non-digits characters:
<p id = "result"></p>
</p>
<script>
let text = "200 students qualified in the exam out of 250";
let pattern = /\D/g;
let result = text.match(pattern);
document.getElementById("result").innerHTML=result;
</script>
</body>
</html>
在這裡,如果給定文字中存在非數字字元,match()方法將返回非數字字元陣列,否則將返回null。根據match()方法的輸出,我們可以執行操作。例如:
示例
在下面的示例中,我們定義一個沒有任何非數字字元的字串,並嘗試在字串中查詢非數字字元。
<!DOCTYPE html>
<html>
<body>
<h1>Finding non-digit element</h1>
<p id = "result"></p>
<script>
let text = "200250";
let pattern = /\D/g;
let result = text.match(pattern);
if(result == null){
document.getElementById("result").innerHTML= "Sorry, No non-digits are found in the text";
}else{
document.getElementById("result").innerHTML= "Non-digit characters are: " + result;
}
</script>
</body>
</html>
例如,輸入文字中沒有非數字字元。因此,如果執行該語句。如果輸入文字包含非數字字元,則將執行另一部分。
示例
現在,我們將檢查如何替換非數字字元。讓我們看一個例子
<!DOCTYPE html>
<html>
<body>
<h1>Replace non-digit character(s)</h1>
<p>After replacing non-digit character(s):
<p id = "result"></p>
</p>
<script>
let text = "200 students qualified in the exam out of 250";
let pattern = /\D/g;
let result = text.split(/\D/g).join(" ");
document.getElementById("result").innerHTML=result;
</script>
</body>
</html>
示例
我們還將檢查另一種替換非數字字元的方法。讓我們看一個例子
<!DOCTYPE html>
<html>
<body>
<h1>Replace non-digit character(s)</h1>
<p>After replacing non-digit character(s):
<p id = "result"></p>
</p>
<script>
let text = "200 students qualified in the exam out of 250";
let pattern = /\D/g;
let result = text.replace(/\D/g , " ");
document.getElementById("result").innerHTML=result;
</script>
</body>
</html>
正如我們所討論的,g用於全域性匹配。它不會在第一次出現時停止,而是會查詢所有出現。
希望這篇文章能幫助你瞭解如何在JavaScript中使用RegExp查詢非數字字元。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP