为 Swift 提供的 ASCIIString
和 ASCIICharacter
类型,提供验证以及从 String
的有损转换。
完整的单元测试覆盖率。
SwiftASCII 可以作为一个 Swift 包使用,可以作为依赖项添加到你的应用程序或包中。
在 Xcode 应用程序项目或框架中,使用此 URL 将包依赖项添加到你的目标。
https://github.com/orchetect/SwiftASCII
在 Swift 包中,将其添加到 Package.swift 依赖项中
.package(url: "https://github.com/orchetect/SwiftASCII", from: "1.1.5")
导入库
import SwiftASCII
// failable init
ASCIIString(exactly: "An ASCII String.") // succeeds
ASCIIString(exactly: "Ãñ ÂŚÇÏÎ Strïńg.") // nil
// lossy string conversion making ASCII-compatible substitutions
ASCIIString("An ASCII String.") // "An ASCII String." (unchanged)
ASCIIString("Ãñ ÂŚÇÏÎ Strïńg.") // "An ASCII String." (substituted)
// lossy string conversion through String literal type inference
let str: ASCIIString = "Ãñ ÂŚÇÏÎ Strïńg."
print(str) // "An ASCII String." (substituted)
let asciiString = ASCIIString("ÂŚÇÏÎ")
// returns typed as String
asciiString.stringValue // "ASCII"
// returns Data representation of string
asciiString.rawData // Data([0x41, 0x53, 0x43, 0x49, 0x49])
// failable init
ASCIICharacter(exactly: "A") // succeeds
ASCIICharacter(exactly: "Ω") // nil
// lossy string conversion making ASCII-compatible substitutions
ASCIICharacter("A") // "A" (unchanged)
ASCIICharacter("Ã") // "A" (substituted)
// lossy character conversion through Character literal type inference
let char: ASCIICharacter = "Ä"
print(char) // "A" (substituted)
// failable ASCII integer literal init
ASCIICharacter(65) // "A"
ASCIICharacter(300) // nil
let asciiString = ASCIICharacter("Ä")
// returns typed as Character
asciiString.characterValue // Character("A")
// returns ASCII integer literal
asciiString.asciiValue // 65
// returns Data representation of character
asciiString.rawData // Data([0x41])
由一群穿着风衣并自称 @orchetect 的 🐹 仓鼠编写。
根据 MIT 许可证获得许可。有关详细信息,请参阅 LICENSE。
欢迎贡献。请随时发布 Issue 进行讨论。