源自JavaScript的The Good Parts是一個匹配URL的正則表達式。在URL中匹配路徑的正確方法是什麼? (8)
僞代碼(每個數字代表一個子表達)
/^(1)(2)(3)(4)(5)(6)(7)$/
在5點是此正則表達式與一些其他的事情。
[^?#]*
很簡單,這僅僅是一個不字符類,除了?
或#
匹配一切,因爲這些將在稍後被用來匹配查詢和片段標識符。
不過,我想與不不使用字符類來代替本 - ^
的第一件事情我不知道的是與否的Unicode可以在路徑中使用。如果它不能,我打算使用ASCII字符集。
澄清:我不想使用負面預測,因爲它模擬不是字符集。
參考:這裏是完整的正則表達式分解成不同的行爲每個部分。
/^
(?:([a-zA-Z]+):)?
(\/{0,3})
([a-zA-Z0-9.\-]+)
(?::(\d+))?
(?:\/([^#?]*))?
(?:\?([^#]))?
(?:#(.*))?
$/
不要使用'不^'...所以你的意思基本上是'[^^] *'?你應該嘗試一下然後 – devnull69
看到[purl](https://github.com/allmarkedup/purl/blob/master/purl.js)正則表達式 – ostapische
爲什麼你想要做到這一點,而通用的足夠允許Unicode? –