SORU
13 HAZİRAN 2014, Cuma


Hızlı Dize karakterleri değiştirmek için bir yolu var mı?

Bir şekilde String Swift karakterleri değiştirmek için arıyorum.

Örnek: "This is my string"

almak için değiştirmek istiyorum: "This is my string".

Bunu nasıl başarabilir?

CEVAP
13 HAZİRAN 2014, Cuma


Birkaç seçenek var. @Jaumard önerdi ve stringByReplacingOccurencesOfString() kullanım olarak yapabilirsiniz

let aString: String = "This is my string"
let newString = aString.stringByReplacingOccurrencesOfString(" ", withString: " ", options: NSStringCompareOptions.LiteralSearch, range: nil)

Ve not tarafından @cprcrack altında options range parametreler isteğe bağlıdır, bu yüzden size istemiyorsanız belirtin dize karşılaştırma seçenekleri ya da bir dizi yapmak yerine içinde, size tek gereken şu.

let aString: String = "This is my string"
let newString = aString.stringByReplacingOccurrencesOfString(" ", withString: " ")

Ya da, eğer veri, belirli bir biçimi böyle, nereye sen sadece yerine ayrılık karakterleri kullanabilirsiniz componentsSeparatedByString() mola dizeye ve dizi, ve daha sonra kullanabilirsiniz katılın işleve koymak onları geri birlikte belirtilen ayırıcı.

let toArray = aString.componentsSeparatedByString(" ")
let backToString = join(" ", toArray)

Ya eğer NSString API kullanmak değil daha Swifty bir çözüm arıyorsanız, bu kullanabilirsiniz.

let aString = "Some search text"

let replaced = String(map(aString.generate()) {
    $0 == " " ? " " : $0
})

KullanıyorsanızSwift 2olarak yazılır son iki çözümler aşağıdaki gibidir.

let toArray = aString.componentsSeparatedByString(" ")
let backToString = " ".join(toArray)

ve

let aString = "Some search text"
let replaced = String(aString.characters.map {
    $0 == " " ? " " : $0
})

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • calicoJake

    calicoJake

    29 EKİM 2007
  • DroidModderX ROOT Master

    DroidModderX

    14 ŞUBAT 2011
  • TVNorge

    TVNorge

    5 EKİM 2006