假设我们在JavaScript中有一个字符串“这是一个不错的网站 - http://stackoverflow.com”。我想使用RegExp提取URL以及前面三个字符(空格破折号空间),并将提取的字符串附加到变量。
var string =“这是一个不错的网站 - http://stackoverflow.com”;
var reg =“”; //不知道怎么写这个正则表达式来提取url和前面三个字符
//经过一些魔法后我会得到
var extracedString =“ - http://www.stackoverflow.com”;
任何?感谢。
答案 0 :(得分:0)
var extractedString = string.replace(/^.*(...http:.+)$/, "$1");
if (extractedString == string) {
alert("No match");
}
点.
匹配每个字符,因此三个点匹配三个任意字符。 ^
和$
匹配字符串的开头和结尾。
请注意,这不适用于
多个网址
HTTPS,mailto,FTP,SSH,...(虽然您可以简单地展开它,如下所示:(https?|ftp|ssh)
)