比較的信頼できる例を見てください: 要素 A が要素 B で始まり、要素 A より 2 文字多いかどうかを判断します。
例:B が「ABC」の場合、A は「ABCDE」となり、条件が満たされます。
このような特定のケースでは、判定に使用する正規表現に変数を追加する必要があります。
rule = /^+B+[0-9]{2}$/ のようなものを使用すると、間違いなくエラーが発生します。変数 B は正規表現の文字として認識され、認識できない場合はエラーが報告されます。 .
そこで、コンストラクタ RegExp() を介して正規表現を生成することを考えました。
var B = "abc"
var A = "abcde"
var rule= new RegExp("^"+B+"\\S{2}$") //S为大写的
console.log(rule.test(A))
最終的な出力結果は真ではありません。つまり、検証は成功です!
この記事がお役に立てば幸いです^_^。