在 JavaScript 中從字串中去除非數字字元
Tahseen Tauseef
2023年1月30日
2022年5月10日
-
JavaScript 中的
正規表示式
-
JavaScript 中的
replace()
方法 -
在 JavaScript 中使用
replace()
方法從字串中刪除所有非數字字元 -
JavaScript 中的
match()
方法 -
JavaScript 中的
join()
方法
本文介紹了他們如何從字串變數中刪除非數字字元。本文將解釋 Regex 的工作原理以及如何使用它。
JavaScript 中的正規表示式
Regex
代表正規表示式。Regex
是 JavaScript 中的物件,由一些特殊模式組成,可以幫助我們匹配多個字串字元組合。
它們也可以中斷或分割一些字元。在程式中編寫正規表示式有兩種不同的方法。
語法 1:
let re = /ab+c/;
語法 2:
let re = new RegExp('ab+c');
我們在這個程式碼段中使用 constructor
函式來表示表示式。表示式可以在執行時更改並在執行時編譯。
JavaScript 中的 replace()
方法
replace()
函式從儲存匹配模式的現有字串建立一個新字串。原始字串保持不變,可以在建立新字串後訪問。
例子:
let q = 'I am dancing while you listen to music';
console.log(q.replace('dancing', 'singing'));
// expected output: "I am dancing while you listen to music"
let regex = /you/i;
console.log(q.replace(regex, 'I'));
// expected output: "I am dancing while I listen to music"
// actual output: "I am dancing while I listen to music"
console.log(q);
// expected output: "I am dancing while you listen to music"
// actual output: "I am dancing while you listen to music"
可以使用此連結或此影象檢視輸出。
我們定義了一個字串變數命名 q
。我們將跳舞
和你
這兩個詞替換為唱歌
和我
。
然後我們顯示結果字串,並且輸出也顯示為程式碼作為註釋。
在 JavaScript 中使用 replace()
方法從字串中刪除所有非數字字元
我們將在字串上使用 replace()
函式,只保留整數值並刪除非整數值。
例子:
let og = "-123.456abcdefgfijkl";
let updated = og.replace(/[^\d.-]/g, '');
console.log(updated);
//expected output: "-123.456"
該程式碼段的輸出請點選連結,也可以看下圖輸出。
我們使用了兩個字串變數。第一個有一些我們想要分離的非數字字元,所以我們建立了另一個變數並使用了 replace()
方法。
\d
用於匹配整數。但是,/g
告訴表示式在第一次替換後繼續工作。
JavaScript 中的 match()
方法
match()
函式將字串與某個正規表示式匹配,並返回與正規表示式匹配的字串。原始字串保持不變。
但是,在程式執行期間可以隨時訪問和使用這個新字串。返回的字串將以陣列形式返回。
例子:
var og = "-123.456abcdefgfijkl";
var updated = og.match(/\d/g);
console.log(updated);
可以使用此連結訪問上述程式碼段的輸出。
JavaScript 中的 join()
方法
join()
函式將字串組合成一個字串。join()
函式將兩個或多個字串一個接一個地連線起來,看起來像一個字串。
我們在從 Match 函式生成的輸出中使用了這個函式,這將為我們提供連線的單個字串。
例子:
var og = "-123.456abcdefgfijkl";
var updated = og.match(/[\d.-]/g);
var joined = updated.join("");
console.log(joined);
可以使用此連結或在下圖中訪問上述程式碼段的輸出。