我想使用 JavaScript 从 href 中删除以正斜杠开头的所有内容。
此片段从 href 中删除以哈希开头的所有内容:
var url = this.href.replace(/#.*/,'');
如何修改它以删除以正斜杠开头的所有内容?
我想使用 JavaScript 从 href 中删除以正斜杠开头的所有内容。
此片段从 href 中删除以哈希开头的所有内容:
var url = this.href.replace(/#.*/,'');
如何修改它以删除以正斜杠开头的所有内容?
也许你想要类似的东西/(\/\/[^\/]+)?\/.*/
,然后保持第一次捕获,如果有的话..
'http://stackoverflow.com/questions/16884753/replace-from-url-etc'
.replace(/(\/\/[^\/]+)?\/.*/, '$1');
// "http://stackoverflow.com"
'stackoverflow.com/questions/16884753/replace-from-url-etc'
.replace(/(\/\/[^\/]+)?\/.*/, '$1');
// "stackoverflow.com"
(pattern)?
表示可选的捕获组
\/\/
表示匹配//
[^\/]+
表示匹配一个或多个连续的非/
\/
表示现在匹配/
.*
几乎所有其他内容
$1
表示捕获组 1,如果为空,将给出一个空字符串。
在此 RegExp 中,捕获组 1 将是
"http://stackoverflow.com/questions/"
^-------$1--------^