Instance Method

drop(while:)

Returns a subsequence by skipping elements while predicate returns true and returning the remaining elements.

Declaration

func drop(while predicate: (Character) throws -> Bool) rethrows -> Substring

Parameters

predicate

A closure that takes an element of the sequence as its argument and returns true if the element should be skipped or false if it should be included. Once the predicate returns false it will not be called again.

Discussion

Complexity: O(n), where n is the length of the collection.

See Also

Removing Substrings

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 removeAll(where: (Character) -> Bool)

Removes all the elements that satisfy the given predicate.

func removeFirst() -> Character

Removes and returns the first element of the collection.

func removeFirst(Int)

Removes the specified number of elements from the beginning of the collection.

func removeLast() -> Character

Removes and returns the last element of the collection.

func removeLast(Int)

Removes the specified number of elements from the end of the collection.

func removeSubrange(Range<String.Index>)

Removes the characters in the given range.

func removeSubrange<R>(R)

Removes the elements in the specified subrange from the collection.

func filter((Character) -> Bool) -> String

Returns a new collection of the same type containing, in order, the elements of the original collection that satisfy the given predicate.

func dropFirst(Int) -> Substring

Returns a subsequence containing all but the given number of initial elements.

func dropLast(Int) -> Substring

Returns a subsequence containing all but the specified number of final elements.

func popLast() -> Character?

Removes and returns the last element of the collection.