When you create a slice of a string, a Substring instance is the result. Operating on substrings is fast and efficient because a substring shares its storage with the original string. The Substring type presents the same interface as String, so you can avoid or defer any copying of the string’s contents.
あなたがある文字列のスライスを作成している場合、Substringインスタンスが結果です。下位文字列での演算は高速で効率的です、なぜなら下位文字列はそれのストレージを本来の文字列と共有するからです。Substring型は、Stringと同じインターフェイスを提供します、それであなたは文字列の内容の何らかのコピーを避けるまたは延期できます。
The following example creates a greeting string, and then finds the substring of the first sentence:
以下の例は、greeting文字列を作成して、それから第一文からなる下位文字列を見つけます。
You can perform many string operations on a substring. Here, we find the length of the first sentence and create an uppercase version.
あなたは、多くの文字列演算を買い文字列上で行えます。ここで、私たちは最初の文の長さを見つけます、そして大文字バージョンを作成します。
Converting a Substring to a String
SubstringをStringに変換する
This example defines a rawData string with some unstructured data, and then uses the string’s prefix(while:) method to create a substring of the numeric prefix:
この例は、rawData文字列を何らかの構造化されていないデータで定義します、それからその文字列のもつprefix(while:)メソッドを使うことで数字接頭辞からなる下位文字列を作成します。
When you need to store a substring or pass it to a function that requires a String instance, you can convert it to a String by using the String(_:) initializer. Calling this initializer copies the contents of the substring to a new string.
あなたが下位文字列を格納するまたはStringインスタンスを要求する関数にそれを渡す必要がある場合、あなたはそれをStringへとString(_:)イニシャライザを使って変換できます。このイニシャライザを呼ぶことは、下位文字列の内容を新しい文字列にコピーします。
Alternatively, you can convert the function that takes a String to one that is generic over the StringProtocol protocol. The following code declares a generic version of the parseAndAddOne(_:) function:
あるいは、あなたはStringをとる関数をStringProtocolプロトコルを越えて総称体であるものに変換できます。以下のコードは、parseAndAddOne(_:)関数のひとつの総称体版を宣言します:
You can call this generic function with an instance of either String or Substring.
あなたは、この総称体関数をStringまたはSubstringのどちらのインスタンスでも呼び出せます。
The collection’s “past the end” position—that is, the position one greater than the last valid subscript argument.
コレクションの「終わりを過ぎた」位置—すなわち、最後の有効な添え字引数より1つ大きい位置。
Returns whether this string is capable of providing access to validly-encoded UTF-8 contents in contiguous memory in O(1) time.
この文字列が、有効に符号化されたUTF-8内容に隣接メモリにおいて O(1) 時間でアクセスを提供する能力があるかどうかを返します。
A sequence containing the same elements as this sequence, but on which some operations, such as map and filter, are implemented lazily.
このシーケンスと同じ要素を含んでいるシーケンス、しかしそれの上で何らかの演算、例えばmapやfilterが遅延に実装されます。
Returns an array containing the non-nil results of calling the given transformation with each element of this sequence.
指定された変換をこのシーケンスの各要素で呼び出す結果で非-nilのものを含んでいる配列を返します。
Returns a Boolean value indicating whether the sequence contains an element that satisfies the given predicate.
指定された述部を満足させるある要素をシーケンスが含むかどうかを指し示すブール値を返します。
Returns the difference needed to produce this collection’s ordered elements from the given collection.
このコレクションのもつ順番付けられた要素をこの与えられたコレクションから生成するのに必要とされる差異を返します。
Returns the difference needed to produce this collection’s ordered elements from the given collection, using the given predicate as an equivalence test.
このコレクションのもつ順番付けられた要素をこの与えられたコレクションから生成するのに必要とされる差異を返します、与えられた述部を同等性テストとして使います。
Returns a subsequence by skipping elements while predicate returns true and returning the remaining elements.predicateがtrueを返す間は要素を飛ばして残りの要素を返すことによって、ある下位シーケンスを返します。
Returns a Boolean value indicating whether this sequence and another sequence contain the same elements in the same order.
このシーケンスともう一方のシーケンスが同じ要素を同じ順序で含むかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether this sequence and another sequence contain equivalent elements in the same order, using the given predicate as the equivalence test.
このシーケンスともう一方のシーケンスが同等の要素を同じ順序で含むかどうかを、与えられた述部を同等テストとして使って、指し示しているブール値を返します。
Returns a sequence of pairs (n, x), where n represents a consecutive integer starting at zero and x represents an element of the sequence.
ペア (n, x) のシーケンスを返します、そこでnはゼロで開始する連続した数を表して、xはシーケンスの要素を表します。
Returns an array containing the concatenated results of calling the given transformation with each element of this sequence.
指定された変換をこのシーケンスの各要素で呼び出す結果を連結したものを含んでいる配列を返します。
Offsets the given index by the specified distance, or so that it equals the given limiting index.
与えられたインデックスをこの指定された隔たりで補います、またはそれでそれは与えられた限界インデックスと等しくなります。
Returns an index that is the specified distance from the given index, unless that distance is beyond a given limiting index.
与えられたインデックスから指定された隔たりのインデックスを返します、その隔たりが与えられた限界インデックスを越えない限りは。
Returns a Boolean value indicating whether the sequence precedes another sequence in a lexicographical (dictionary) ordering, using the less-than operator (<) to compare elements.
そのシーケンスが別のシーケンスの前に来るかどうかを、ある語彙筆記的順序(字典)順序において、より小さい演算子(<)を使って要素を比較して、指し示すブール値を返します。
Returns a Boolean value indicating whether the sequence precedes another sequence in a lexicographical (dictionary) ordering, using the given predicate to compare elements.
シーケンスが別のシーケンスの前に来るかどうかをある語彙筆記的順序(字典)順序において、与えられた述部を使って要素を比較して、指し示すブール値を返します。
If this string is not contiguous, make it so. If this mutates the substring, it will invalidate any pre-existing indices.
この文字列が隣接しないならば、それをそうします。これが下位文字列を変化させるならば、それはあらゆる前から存在するインデックスを無効にするでしょう。
Returns a subsequence, up to the specified maximum length, containing the initial elements of the collection.
下位シーケンスを、指定された最大長まで、コレクションの冒頭の要素を含めて返します。
Returns a subsequence containing the initial elements until predicate returns false and skipping the remaining elements.predicateがfalseを返すまで冒頭の要素を含んでいて残りの要素を飛ばしている、ある下位シーケンスを返します。
Prepares the collection to store the specified number of elements, when doing so is appropriate for the underlying type.
指定された数の要素を格納するようにコレクションを準備します、そうすることが基礎をなす型に対して適切である場合には。
Returns the longest possible subsequences of the collection, in order, that don’t contain elements satisfying the given predicate.
与えられた述部を満たす要素を含んでいない、このコレクションの最も長くなりうる下位シーケンスそれらを順序どおりに返します。
Returns the longest possible subsequences of the collection, in order, around elements equal to the given element.
与えられた要素と等しい要素を避けるようにして、このコレクションの最も長くなりうる下位シーケンスを、順番に返します。
Returns a Boolean value indicating whether the initial elements of the sequence are the same as the elements in another sequence.
シーケンスの最初の要素らが別のシーケンスの中の要素らと同じかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the initial elements of the sequence are equivalent to the elements in another sequence, using the given predicate as the equivalence test.
シーケンスの最初の要素らが別のシーケンスの中の要素らと同等かどうかを、与えられた述部を同等性テストとして使って指し示すブール値を返します。
Calls the given closure with a pointer to the contents of the string, represented as a null-terminated sequence of UTF-8 code units.
null終端のUTF-8コード単位シーケンスとして表される、文字列の内容へのポインタとともに与えられたクロージャを呼び出します。
Calls the given closure with a pointer to the contents of the string, represented as a null-terminated sequence of code units.
null終端のコード単位シーケンスとして表される、文字列の内容へのポインタとともに与えられたクロージャを呼び出します。
Runs body over the content of this substring in contiguous memory. If this substring is not contiguous, this will first make it contiguous, which will also speed up subsequent access. If this mutates the substring, it will invalidate any pre-existing indices.bodyを、隣接メモリの中のこの下位文字列の内容に対して実行します。この下位文字列が隣接しないならば、これは最初にそれを隣接させます、それはまた後に続くアクセスの速度を上げるでしょう。これが下位文字列を変化させるならば、それはあらゆる前から存在するインデックスを無効にするでしょう。
Returns a Boolean value indicating whether the value of the first argument is less than that of the second argument.
最初の引数の値が2番目の引数のそれより少ないかどうかを指し示しているブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is less than or equal to that of the second argument.
最初の引数の値が2番目の引数のそれより少ないまたは等しいかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is less than or equal to that of the second argument.
最初の引数の値が2番目の引数のそれより少ないまたは等しいかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is greater than that of the second argument.
最初の引数の値が2番目の引数のそれより大きいかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is greater than that of the second argument.
最初の引数の値が2番目の引数のそれより大きいかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is greater than or equal to that of the second argument.
最初の引数の値が2番目の引数のそれより大きいまたは等しいかどうかを指し示すブール値を返します。
Returns a Boolean value indicating whether the value of the first argument is greater than or equal to that of the second argument.
最初の引数の値が2番目の引数のそれより大きいまたは等しいかどうかを指し示すブール値を返します。