我希望能够检查一个字符串以查看它是否在开头有http://并且如果不添加它。如何检查一个字符串是否包含http://在开头
if (regex expression){
string = "http://"+string;
}
有没有人知道使用正则表达式?
我希望能够检查一个字符串以查看它是否在开头有http://并且如果不添加它。如何检查一个字符串是否包含http://在开头
if (regex expression){
string = "http://"+string;
}
有没有人知道使用正则表达式?
如果你并不需要一个正则表达式来做到这一点(取决于你所使用的语言),你可以简单地看一下你的字符串的初始字符。例如:
if (!string.StartsWith("http://"))
string = "http://" + string;
//or//
if (string.Substring(0, 7) != "http://")
string = "http://" + string;
可以给你许多许多赞美词。有时候,正则表达式是矫枉过正的。 – 2009-09-08 20:13:35
谢谢你的祝福。是的,有时候强大的语言功能会被过度使用。正则表达式并不像简单的字符串操作那么快。 – 2009-09-08 20:42:29
/^http:\/\//
在JavaScript:
if(!(/^http:\/\//.test(url)))
{
string = "http://" + string;
}
应该是:
/^http:\/\//
记住与!
或not
使用(你没有说的编程语言),因为你是寻找不匹配的物品。
如果JavaScript是这里所需要的语言,然后再看看this post它增加了“startswith”属性字符串类型。
yourString = yourString.StartWith("http://") ? yourString : "http://" + yourString
更加性感
var url = "http://abcd";
var pattern = /^((http|https|ftp):\/\/)/;
if(!pattern.test(url)) {
url = "http://" + url;
}
alert(url);
虽然这段代码可能会回答这个问题,但提供关于* how *和/或* why *的附加上下文是否可以解决问题会提高答案的长期价值。 - [来自评论](http://stackoverflow.com/review/low-quality-posts/13275385) – 2016-08-09 16:16:10
什么语言? – 2009-10-27 16:09:22