正規表示式是包含各種字元的模式。我們可以使用正規表示式來搜尋字串是否包含特定模式。
在這裡,我們將學習建立正規表示式來驗證各種數學公式。我們將使用 test() 或 match() 方法來檢查特定數學公式是否與正規表示式相符
使用者可以依照下列語法建立接受特殊數學公式的正規表示式。
let regex = /^\d+([-+]\d+)*$/g;
上面的正規表示式只接受 10 – 13 12 23,就像數學公式一樣。
/ / – 它代表正規表示式的開始和結束。
#^ – 它代表公式字串的開頭。
#\d – 它代表公式開頭的至少一位或多位數字。
#[- ] – 表示正規表示式中的「 」和「-」運算子。
([- ]\d )* –# 表示公式中可以包含數字,後面跟著多次「 」或「-」運算子。
#$ – 它代表字串的結尾。
#g – 它是符合所有出現的識別碼。
在下面的範例中,我們建立了正規表示式,它接受包含數字「 」或「-」運算子的公式。
使用者可以觀察到第一個公式與輸出中的正規表示式模式相符。第二個公式與正規表示式模式不匹配,因為它包含“*”運算符。另外,第三個公式與第一個公式相同,但它在運算子和數字之間包含空格,因此與正規表示式不符。
<html> <body> <h3>Creating the regular expression to validate special mathematical formula in JavaScript</h3> <div id = "output"></div> <script> let output = document.getElementById('output'); function matchFormula(formula) { let regex = /^\d+([-+]\d+)*$/g; let isMatch = regex.test(formula); if (isMatch) { output.innerHTML += "The " + formula + " is matching with " + regex + "<br>"; } else { output.innerHTML += "The " + formula + " is not matching with " + regex + "<br>"; } } let formula = "10+20-30-50"; matchFormula(formula); matchFormula("60*70*80"); matchFormula("10 + 20 - 30 - 50") </script> </body> </html>
我們在下面的範例中使用了 /^\d (\s*[- */]\s*\d )*$/g 正規表示式。使用者可以在下面找到所使用的正規表示式的解釋。
^\d – 它代表公式開頭至少一位數字。
#\s* – 它代表零個或多個空格。
#(\s*[- */]\s*\d )* – 表示公式中可以依相同順序多次包含空格、運算符、空格和數字。
在下面的範例中,我們透過傳遞各種公式作為參數來呼叫 TestMultiplyFormula() 函數三次。我們使用 test() 方法來檢查公式是否與正規表示式模式相符。
在輸出中,我們可以看到正規表示式接受帶有「*」和「/」運算子以及空格的公式。
<html> <body> <h2>Creating the regular expression <i> to validate special mathematical formula </i> in JavaScript.</h2> <div id = "output"> </div> <script> let output = document.getElementById('output'); function TestMultiplyFormula(formula) { let regex = /^\d+(\s*[-+*/]\s*\d+)*$/g; let isMatch = regex.test(formula); if (isMatch) { output.innerHTML += "The " + formula + " is matching with " + regex + "<br>"; } else { output.innerHTML += "The " + formula + " is not matching with " + regex + "<br>"; } } let formula = "12312323+454+ 565 - 09 * 23"; TestMultiplyFormula(formula); TestMultiplyFormula("41*14* 90 *80* 70 + 90"); TestMultiplyFormula("41*14& 90 ^80* 70 + 90"); </script> </body> </html>
本教學教我們建立一個接受特殊數學公式的正規表示式。在這兩個範例中,我們都使用了 test() 方法來將公式與正規表示式進行比對。此外,我們在兩個範例中使用了不同的正規表示式模式。
以上是如何建立只接受特殊公式的正規表示式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!