Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果字符串不包含http://,如何将其添加到字符串中?_Javascript_Regex - Fatal编程技术网

Javascript 如果字符串不包含http://,如何将其添加到字符串中?

Javascript 如果字符串不包含http://,如何将其添加到字符串中?,javascript,regex,Javascript,Regex,我想知道如何将http://添加到字符串中,方法是事先检查它是否已经在字符串中 如何仅使用javascript(可能是带有正则表达式的javascript)有效地将字符串转换为完整url?理想情况下,我可以检查字符串是否也以.com/.org/.net等结尾 使用字符串连接: 您可以使用indexOf检查http:// if(str.indexOf("http://") < 0){ str = "http://" + str; } 适应你的需要 <script> var

我想知道如何将http://添加到字符串中,方法是事先检查它是否已经在字符串中

如何仅使用javascript(可能是带有正则表达式的javascript)有效地将字符串转换为完整url?理想情况下,我可以检查字符串是否也以.com/.org/.net等结尾

使用字符串连接:


您可以使用indexOf检查http://

if(str.indexOf("http://") < 0){
   str = "http://" + str;
}
适应你的需要

<script>
var url = "http://www.google.com..."; 
var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/

if (regexp.test(url)) {
    alert(url);
} else {
    alert('http://' + url);
}
</script>

-1–让我引用标题:如果它不存在,我就看不出这个答案必然是错误的。这个问题完全不清楚。@thejh在阅读了字里行间的内容后编辑,因为这个问题非常不清楚。你现在能再解释一下-1吗?@Ghilled:除了最后一行缺少缩进,没有异议。但我的投票被锁定——如果在前五分钟左右发生编辑,投票锁定可能不会被删除?编辑:是的:@thejh啊,我想没关系。谢谢你回来。你的问题并没有说明你是如何试图自己解决这个问题的。你的问题还不清楚。什么是不存在的?@PointedEars:他不能正确地写出自己的想法,这让我白白丢了分数。哈哈。有点离题,但在复制粘贴代码中的以下任何答案之前,请仔细阅读。@adrianp您提到的“谷歌JavaScript风格指南”从未在链接文本中使用过“this”之类的内容,这已经过时了;有些项目甚至是有问题的,在没有充分理由的情况下以不必要的方式限制开发人员。Crockford的规则和jslint…你不想让我开始这方面的工作。很好,测试https和ftp也很好。。。但是,呃,如果块没有命中,url就没有任何价值,对吗?也许将url更改为您的_url?一行的点,如果是?如果你坚持,就用三元。@thejh你是对的!您需要转义斜杠,以便regex应该是var reg=/^http | https | ftp:\/\/;编码风格注释:您混合了以分号结尾的行和以非分号结尾的行
var reg = /^((http|https|ftp)://)/;

if(!reg.test(your_url)) { your_url = "http://" + your_url; }
<script>
var url = "http://www.google.com..."; 
var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/

if (regexp.test(url)) {
    alert(url);
} else {
    alert('http://' + url);
}
</script>