Skip to content

Instantly share code, notes, and snippets.

@isoiphone
Last active August 29, 2015 14:27
Show Gist options
  • Select an option

  • Save isoiphone/0f7da6626629a9c634dd to your computer and use it in GitHub Desktop.

Select an option

Save isoiphone/0f7da6626629a9c634dd to your computer and use it in GitHub Desktop.
Swift 2.0 strings-- I don't understand
private let ValidCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\n".utf8
private func RandomString() -> String {
var str = ""
// 1-140
let len = 1+(Int(rand())%140)
for _ in 0...len {
let offset = Int(rand())%Int(ValidCharacters.count)
let index = advance(ValidCharacters.startIndex, offset)
let ch = UnicodeScalar(UInt8(ValidCharacters[index].value))
str.append(ch)
}
return str
}
@jtbandes
Copy link

jtbandes commented Aug 9, 2015

import Darwin

private let ValidCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".characters

private func RandomString() -> String {
    var result = String.CharacterView()

    for _ in 1...(1 + Int(arc4random_uniform(140))) {
        let n = Int(arc4random_uniform(UInt32(ValidCharacters.count)))
        result.append(ValidCharacters[advance(ValidCharacters.startIndex, n)])
    }

    return String(result)
}

RandomString()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment