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

  • International Secret Agents Concerts

    Internationa

    2 Aralık 2008
  • incognitotraveler

    incognitotra

    27 Mayıs 2010
  • tychoadragmire

    tychoadragmi

    20 Mart 2006