init()
Creates an empty string.
init(String.UnicodeScalarView)
Creates a string corresponding to the given collection of Unicode scalars.
init(String.UTF8View)
Creates a string corresponding to the given sequence of UTF-8 code units.
init(String.UTF16View)
Creates a string corresponding to the given sequence of UTF-16 code units.
init(Character)
Creates a string containing the given character.
init?(Substring.UTF8View)
Creates a String having the given content.
init?(Substring.UTF16View)
Creates a String having the given content.
init(Substring.UnicodeScalarView)
Creates a String having the given content.
init(Substring)
Creates a new string from the given substring.
init(Unicode.Scalar)
init<S>(S)
Creates a new string containing the characters in the given sequence.
init<S>(S)
Creates a new string containing the characters in the given sequence.
init<T>(T)
Creates an instance from the description of a given LosslessStringConvertible
instance.
init<T>(T, radix: Int, uppercase: Bool)
Creates a string representing the given value in base 10, or some other specified base.
init(cString: UnsafePointer<CChar>)
Creates a new string by copying the null-terminated UTF-8 data referenced by the given pointer.
init(cString: UnsafePointer<UInt8>)
Creates a new string by copying the null-terminated UTF-8 data referenced by the given pointer.
init?<T>(codingKey: T)
init<C, Encoding>(decoding: C, as: Encoding.Type)
init<Encoding>(decodingCString: UnsafePointer<Encoding.CodeUnit>, as: Encoding.Type)
Creates a new string by copying the null-terminated sequence of code units referenced by the given pointer.
init<Subject>(describing: Subject)
Creates a string representing the given value.
init<Subject>(describing: Subject)
Creates a string representing the given value.
init<Subject>(describing: Subject)
Creates a string representing the given value.
init<Subject>(describing: Subject)
Creates a string representing the given value.
init(from: any Decoder) throws
init<Subject>(reflecting: Subject)
Creates a string with a detailed representation of the given value, suitable for debugging.
init(repeating: String, count: Int)
Creates a new string representing the given string repeated the specified number of times.
init(repeating: Character, count: Int)
Creates a string representing the given character repeated the specified number of times.
init(stringInterpolation: DefaultStringInterpolation)
Creates a new instance from an interpolated string literal.
init(stringLiteral: String)
Creates an instance initialized to the given string value.
init(unsafeUninitializedCapacity: Int, initializingUTF8With: (UnsafeMutableBufferPointer<UInt8>) throws -> Int) rethrows
Creates a new string with the specified capacity in UTF-8 code units, and then calls the given closure with a buffer covering the string’s uninitialized memory.
init?<Encoding>(validating: some Sequence, as: Encoding.Type)
Creates a new string by copying and validating the sequence of code units passed in, according to the specified encoding.
init?<Encoding>(validating: some Sequence<Int8>, as: Encoding.Type)
Creates a new string by copying and validating the sequence of code units passed in, according to the specified encoding.
init?(validatingCString: UnsafePointer<CChar>)
Creates a new string by copying and validating the null-terminated UTF-8 data referenced by the given pointer.
static func decodeCString<Encoding>(UnsafePointer<Encoding.CodeUnit>?, as: Encoding.Type, repairingInvalidCodeUnits: Bool) -> (result: String, repairsMade: Bool)?
Creates a new string by copying the null-terminated data referenced by the given pointer using the specified encoding.
static func decodeCString<Encoding>([Encoding.CodeUnit], as: Encoding.Type, repairingInvalidCodeUnits: Bool) -> (result: String, repairsMade: Bool)?
static func + (lhs: String, rhs: String) -> String
static func += (lhs: inout String, rhs: String)
static func < (lhs: String, rhs: String) -> Bool
static func == (lhs: String, rhs: String) -> Bool
static func ~= (lhs: String, rhs: Substring) -> Bool
var codingKey: any CodingKey
var count: Int
The number of characters in a string.
var customMirror: Mirror
A mirror that reflects the String
instance.
var debugDescription: String
A representation of the string that is suitable for debugging.
var description: String
The value of this string.
var endIndex: String.Index
A string’s “past the end” position—that is, the position one greater than the last valid subscript argument.
var isContiguousUTF8: Bool
Returns whether this string is capable of providing access to validly-encoded UTF-8 contents in contiguous memory in O(1) time.
var isEmpty: Bool
A Boolean value indicating whether a string has no characters.
var startIndex: String.Index
The position of the first character in a nonempty string.
var utf16: String.UTF16View
A UTF-16 encoding of self
.
var utf8: String.UTF8View
A UTF-8 encoding of self
.
var utf8CString: ContiguousArray<CChar>
A contiguously stored null-terminated UTF-8 representation of the string.
subscript(String.Index) -> Character
Accesses the character at the given position.
subscript(Range<String.Index>) -> Substring
func append(String)
Appends the given string to this string.
func append(contentsOf: String)
func append(contentsOf: Substring)
func append<S>(contentsOf: S)
Appends the characters in the given sequence to the string.
func distance(from: String.Index, to: String.Index) -> Int
Returns the distance between two indices.
func encode(to: any Encoder) throws
Encodes this value into the given encoder.
func hasPrefix(String) -> Bool
func hasSuffix(String) -> Bool
func hash(into: inout Hasher)
Hashes the essential components of this value by feeding them into the given hasher.
func index(String.Index, offsetBy: Int) -> String.Index
Returns an index that is the specified distance from the given index.
func index(String.Index, offsetBy: Int, limitedBy: String.Index) -> String.Index?
Returns an index that is the specified distance from the given index, unless that distance is beyond a given limiting index.
func index(before: String.Index) -> String.Index
func insert(Character, at: String.Index)
Inserts a new character at the specified position.
func insert<S>(contentsOf: S, at: String.Index)
Inserts a collection of characters at the specified position.
func lowercased() -> String
Returns a lowercase version of the string.
func makeContiguousUTF8()
If this string is not contiguous, make it so. If this mutates the string, it will invalidate any pre-existing indices.
func max<T>(T, T) -> T
func min<T>(T, T) -> T
func remove(at: String.Index) -> Character
Removes and returns the character at the specified position.
func removeAll(keepingCapacity: Bool)
Replaces this string with the empty string.
func removeSubrange(Range<String.Index>)
Removes the characters in the given range.
func replaceSubrange<C>(Range<String.Index>, with: C)
Replaces the text within the specified bounds with the given characters.
func reserveCapacity(Int)
Reserves enough space in the string’s underlying storage to store the specified number of ASCII characters.
func uppercased() -> String
Returns an uppercase version of the string.
func withCString<Result>((UnsafePointer<Int8>) throws -> Result) rethrows -> Result
func withCString<Result, TargetEncoding>(encodedAs: TargetEncoding.Type, (UnsafePointer<TargetEncoding.CodeUnit>) throws -> Result) rethrows -> Result
func withUTF8<R>((UnsafeBufferPointer<UInt8>) throws -> R) rethrows -> R
Runs body
over the content of this string in contiguous memory. If this string is not contiguous, this will first make it contiguous, which will also speed up subsequent access. If this mutates the string, it will invalidate any pre-existing indices.
func write(String)
Appends the given string to this string.
func write<Target>(to: inout Target)
Writes the string into the given output stream.