How to find the Index of Substring in Swift - Step by Step Examples
How to find the Index of Substring in Swift ?
Answer
To find the index of a substring in Swift, you can use the range(of:)
method of the String class. This method returns the range of the first occurrence of the specified substring, which you can then use to determine the starting index.
✐ Examples
1 Finding the index of "World" in "Hello World"
In this example,
- We create a string named
str
with a value of"Hello World"
. - Next, we define a substring
substring
with a value of"World"
that we want to find in the main string. - We use the
range(of:)
method of the stringstr
to find the range of the first occurrence of the substring. This method returns an optional range, so we use optional binding (if let
) to safely unwrap the result. - If the substring is found, the
range
constant will hold the range of the substring within the main string. We then calculate the starting index of this range by converting the range's lower bound to an integer offset from the string's start index using thedistance(from:to:)
method. - Finally, we print the starting index of the substring within the main string.
- If the substring is not found, we print a message indicating that the substring was not found.
Swift Program
import Foundation
let str = "Hello World"
let substring = "World"
if let range = str.range(of: substring) {
let index = str.distance(from: str.startIndex, to: range.lowerBound)
print("The starting index of \"(substring)\" is: (index)")
} else {
print("Substring \"(substring)\" not found")
}
Output
The starting index of "World" is: 6
2 Finding the index of "Prog" in "Swift Programming"
In this example,
- We create a string named
str
with a value of"Swift Programming"
. - Next, we define a substring
substring
with a value of"Prog"
that we want to find in the main string. - We use the
range(of:)
method of the stringstr
to find the range of the first occurrence of the substring. This method returns an optional range, so we use optional binding (if let
) to safely unwrap the result. - If the substring is found, the
range
constant will hold the range of the substring within the main string. We then calculate the starting index of this range by converting the range's lower bound to an integer offset from the string's start index using thedistance(from:to:)
method. - Finally, we print the starting index of the substring within the main string.
- If the substring is not found, we print a message indicating that the substring was not found.
Swift Program
import Foundation
let str = "Swift Programming"
let substring = "Prog"
if let range = str.range(of: substring) {
let index = str.distance(from: str.startIndex, to: range.lowerBound)
print("The starting index of \"(substring)\" is: (index)")
} else {
print("Substring \"(substring)\" not found")
}
Output
The starting index of "Prog" is: 6
Summary
In this tutorial, we learned How to find the Index of Substring in Swift language with well detailed examples.
More Swift Strings Tutorials
- How to Create an Empty String in Swift ?
- How to get Length of String in Swift ?
- How to get Character at Specific Index in String in Swift ?
- How to get First Character in String in Swift ?
- How to get Last Character in String in Swift ?
- How to get First N Characters in String in Swift ?
- How to get Last N Characters in String in Swift ?
- How to get Substring after Specific Character in Swift ?
- How to get Substring before Specific Character in Swift ?
- How to get Substring between two Specific Characters in Swift ?
- How to get Substring from Specific Index to End in Swift ?
- How to Iterate over Characters in String in Swift ?
- How to Iterate over Words in String in Swift ?
- How to Check if String is Empty in Swift ?
- How to Check if String contains only Alphabets in Swift ?
- How to Check if String contains only Alphabets and Numbers in Swift ?
- How to Check if String contains only Numeric Digits in Swift ?
- How to Check if a String contains given Substring in Swift ?
- How to Check if String contains specific Character in Swift ?
- How to Check if String starts with Specific Prefix in Swift ?
- How to Check if String ends with Specific Suffix in Swift ?
- How to Append a String to another String in Swift ?
- How to Append a Character to beginning of a String in Swift ?
- How to Append a Character to end of a String in Swift ?
- How to Concatenate Two Strings in Swift ?
- How to Repeat a String N Times in Swift ?
- How to Insert Character at Specific Index in String in Swift ?
- How to Replace a Substring in String in Swift ?
- How to Replace multiple Spaces with a Single Space in String in Swift ?
- How to Replace Character at Specific Index in String in Swift ?
- How to Replace All Occurrences of a Substring in a String in Swift ?
- How to Replace a Substring in a String using Regular Expression in Swift ?
- How to Split a String in Swift ?
- How to Split a String by New Line in Swift ?
- How to Split a String by Comma in Swift ?
- How to Sort Characters in String in Swift ?
- How to convert String to Lowercase in Swift ?
- How to convert String to Uppercase in Swift ?
- How to Trim a String in Swift ?
- How to convert First Character in String to Uppercase in Swift ?
- How to Reverse a String in Swift ?
- How to Remove Character at specific Index in a String in Swift ?
- How to Remove First Character in a String in Swift ?
- How to Remove Last Character in a String in Swift ?
- How to Remove first N Characters in a String in Swift ?
- How to Remove last N Characters in a String in Swift ?
- How to Remove specific Substring in Swift ?
- How to Remove specific Character from a String in Swift ?
- How to Remove All Whitespace Characters from a String in Swift ?
- How to Remove Special Characters from a String in Swift ?
- How to keep only Alphabets in a String in Swift ?
- How to Convert Integer to String in Swift ?
- How to Convert String to Integer in Swift ?
- How to convert String to Float in Swift ?
- How to convert Float to String in Swift ?
- How to check if Two Strings are Equal in Swift ?
- How to check if Two Strings are Equal ignoring case in Swift ?
- How to Compare Two Strings in Swift ?
- How to find the Characters in the First String that are not Present in the Second String in Swift ?
- How to find the Index of Substring in Swift ?
- How to find the Index of Last Occurrence of Substring in Swift ?
- How to find the Indices of All Occurrences of Substring in Swift ?
- How to get all the possible Substrings of a String in Swift ?
- How to get all the possible K length Substrings in a String in Swift ?