2009-09-08 16 views

答えて

40

を動作するはずです。たとえば:JavaScriptはここに必要な言語である

if (!string.StartsWith("http://")) 
    string = "http://" + string; 
//or// 
if (string.Substring(0, 7) != "http://") 
    string = "http://" + string; 
+3

多くのアップフォースがあなたに贈られることがあります。時々、正規表現は過度のものです。 –

+1

祝福ありがとうございました。はい、時には強力な言語機能が過度に使用されます。正規表現は単純な文字列操作ほど高速ではありません。 –

6

if(!(/^http:\/\//.test(url))) 
{ 
    string = "http://" + string; 
} 
8

は次のようになります。

/^http:\/\// 

そして!またはnotでこれを使うことを覚えておいてください(あなたがプログラミング言語を言っていなかった)、あなたがしているので、一致しない項目を探します。このような

3

何かがあなたが(あなたが使用しているどのような言語に応じて)これを行うための正規表現を必要としない場合、あなたは単にあなたの文字列の最初の文字を見て可能性があり^(https?://)

+0

/sをエスケープする必要があります。 – scragar

0

場合は、文字列型に「STARTSWITH」プロパティを追加this postを見てください。

2
yourString = yourString.StartWith("http://") ? yourString : "http://" + yourString 

2
var url = "http://abcd"; 
var pattern = /^((http|https|ftp):\/\/)/; 

if(!pattern.test(url)) { 
    url = "http://" + url; 
} 

alert(url); 
+1

このコードは質問に答えるかもしれませんが、* how *および/または* why *が問題を解決するという追加の文脈を提供すると、回答の長期的価値が向上します。 - [レビューから](http://stackoverflow.com/review/low-quality-posts/13275385) –

関連する問題