JSは正規表現に変数をどのように挿入しますか

比較的信頼できる例を見てください: 要素 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))

最終的な出力結果は真ではありません。つまり、検証は成功です! 

この記事がお役に立てば幸いです^_^。

おすすめ

転載: blog.csdn.net/qq_58174484/article/details/126241793