[英]regex to check if it root dir of url, “”, “/”, “/index.php”
如果我通過window.location.href
在javascript中獲取url,如何根據剛得到的url字符串檢查我是否位於根目錄以外的地方。 與正則表達式。
如果url字符串是“ https://stackoverflow.com ”,並且我被該字符串分割(協議+域+ tld),則我希望正則表達式匹配:
但不是“ / questions”,“ / questions / ask”或index.php或網站根目錄以外的目錄中的任何文件,例如“ questions / ask / index.php”
此正則表達式將滿足您的要求。
^(|\/(?:index\.php)?|\s+)$
^$
是需要完全字符串匹配的錨。 ( ^
領先, $
結束)
()
是一個分組
|
分隔有效的可能匹配項。 ?:
是非捕獲組(實際上兩個組都可以是非捕獲組)。
我們通過使用可選的index.php
簡化了更改(結尾的?
使該組成為可選的)。
\\s+
至少是一個空格。
和領先|
不允許任何東西出現。
它也可以寫成:
^(?:|\/|\/index\.php|\s+|)$
功能性JS用法:
var url = '',
regex = /^(?:|\/|\/index\.php|\s+|)$/;
if(url.match(regex)) {
console.log('TRUE');
} else{
console.log('FALSE');
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.