ランダムサブドメインの特定のURL(https://*.testsite123.io/testsite123/portal/#/login
)を使用している場合にのみ、JavaScriptを呼び出す必要があります。これまでのところ、私はしばらくhttps://prod.testsite123.io/testsite123/portal/#/login
にクロームコンソールで実行Javascriptの特定のURLとRegexとの照合
function escapeRegExp(str) {
var escaped = str.replace(/([.+?^=!:${}()|\[\]\/\\])/g, "\\$1");
console.log("escaped " + escaped);
escaped = new RegExp(escaped);
return escaped;
}
function matchUrl() {
var currentUrl = window.location.toString();
var loginUrlRegex = escapeRegExp("https://*.testsite123.io/testsite123/portal/#/login");
return loginUrlRegex.test(currentUrl);
}
console.log("window.location " + window.location.toString());
console.log("match " + matchUrl());
思い付いたこの利回り:
window.location https://prod.testsite123.io/testsite123/portal/#/login
escaped https\:\/\/*\.testsite123\.io\/testsite123\/portal\/#\/login
match false
一致していない理由を私は知らないのですか?私は*
以外のすべてをエスケープしましたか?
あなたが '' *特定に近いものになったのどの時点で*「特定のURL」*を言うときに使用する正規表現リテラルは、すべての混乱エスケープ問題 – dandavis
を避けるために? 'https:// *。' ??? – zer00ne
@dandavis私のURLには '/'と '# 'がありますので、他のリテラルについてはわかりません。 – mles