2010-09-06 9 views
9

Wie kann ich eine Zeichenfolge vom Anfang bis zu einem bestimmten Zeichen auswählen?Wie kann ich eine Zeichenfolge vom Anfang bis zu einem bestimmten Zeichen auswählen?

Zum Beispiel im Anschluss an eine Schlagzeile ...

someString = @"Los Angeles, California - Apple announces something, stock prices change."

Wie wähle ich nur Los Angeles, California - in eine separate Zeichenfolge? (Ich möchte, dass meine Auswahl auf alles vor dem - ("Strich") Zeichen stützen

EDIT:.

Sagen meine Überschrift wie folgt aussieht:

someString = @"Los Angeles, California - Apple announces something - stock prices change."

Wie kann ich verhindern Sie, dass mein Standort-String wie folgt aussieht: Los Angeles, California - Apple announces something?

Bearbeiten:

Mein Fehler, ich entfernte den ersten Strich und dann wieder die Zeichenfolge. Mein Fehler die gepostete Antwort funktioniert.

Antwort

23
NSRange rangeOfDash = [someString rangeOfString:@"-"]; 
substring = (rangeOfDash.location != NSNotFound) ? [someString substringToIndex:rangeOfDash.location] : nil; 

Hier wird die substring-nil, wenn es in der someString kein Strich ist.

+0

Was würde rangeOfDash nach dem Analysieren der ganzen Sache auf someString basieren? – Moshe

+0

Ich möchte nur den ersten Strich, nicht nachfolgende Bindestriche. Siehe meine Bearbeitung. – Moshe

+0

Nevermind, siehe meine zweite Bearbeitung. – Moshe