2010-11-24 11 views

答えて

15

NSURL *url = [NSURL URLWithString:@"http://www.foo.com/bar/baragain"]; 
NSLog(@"Base url: %@://%@", [url scheme], [url host]); 
// output is http://www.foo.com 
+3

すぎてユーザー名とパスワードがあることができて、これは普遍的ではありません... これは、よりよい解決策である:「私はそれを行うには見つけもう一つの方法は、NSURLはパス法が含まれていることです。私は道を得ることができ、完全なURLからそれを引くことができ、私は私が欲しいものを残している」 – Renetik

+1

パスがそこにあった場合、パスを差し引いても安全です – petenelson

-2
NSString *str = @"http://www.foo.com/bar/baragain"; 
NSArray *temp = [str componentsSeparatedByString: @".com"]; 
str = [NSString stringWithFormat: @"%@%@", [temp objectAtIndex:0], @".com"]; 
+0

誰でも私にdownvoting答えは – Swastik

+0

upvoted ............. – Bourne

+2

これはなぜ落とされたのですか?それは間違っています、 'http:// www.computer.com /' BtwのようなURLを想像してください、それは私ではありませんでした。 –

10
NSURL *url = [NSURL URLWithString:@"http://www.foo.com/bar/baragain"]; 
NSURL *root = [NSURL URLWithString:@"/" relativeToURL:url]; 
NSLog(@"root = '%@'", root.absoluteString); // root = 'http://www.foo.com/' 
+0

Perfecto!ありがとう。 – cmilhench

2

あなたはNSURLpath文字列から削除することができます。これは、ルートサイトの一部であるポート番号やその他のデータの原因となります。

NSString *urlString = @"http://www.foo.com/bar/baragain"; 
NSURL *rootUrl = [NSURL URLWithString:urlString]; 
NSString *rootUrlString = [urlString stringByReplacingOccurrencesOfString:rootUrl.path withString:@""]; 
+0

ブリリアント!ありがとうございました。 – PaulJ

+0

ああ。 '@" http://www.foo.com/www.f "' – Hafthor

+0

@Hafthorあなたが正しいと試してください - これはまだ間違っています。編集しても構いません。 –

関連する問題