Java String regionMatches() Method with Examples - GeeksforGeeks

10 Dec, 2021
The regionMatches() method of the String class has two variants that can be used to test if two string regions are matching or equal. There are two variants of this method, i.e., one is case sensitive test method, and the other ignores the case-sensitive method.
Syntax:
1. Case sensitive test method:
public boolean regionMatches(int toffset, String other, int ooffset, int len)
2. It has the option to consider or ignore the case method:
public boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
Parameters:
ignoreCase: if true, ignore the case when comparing characters.
toffset: the starting offset of the subregion in this string.
other: the string argument being compared.
ooffset: the starting offset of the subregion in the string argument.
len: the number of characters to compare.
Return Value:
A substring of the String object is compared to a substring of the argument other. The result is true if these substrings represent character sequences that are the same, ignoring case if and only if ignoreCase is true. The substring of this String object to be compared begins at index toffset and has length len. The substring of other to be compared begins at index ooffset and has length len. The result is false if and only if at least one of the following is true
Example 1:
Java
// Java Program to find if substrings// or regions of two strings are equal import java.io.*; class CheckIfRegionsEqual {    public static void main(String args[])    {         // create three string objects        String str1            = new String("Welcome to Geeksforgeeks.com");        String str2 = new String("Geeksforgeeks");        String str3 = new String("GEEKSFORGEEKS");         // Comparing str1 and str2        System.out.print(            "Result of Comparing of String 1 and String 2: ");        System.out.println(            str1.regionMatches(11, str2, 0, 13));         // Comparing str1 and str3        System.out.print(            "Result of Comparing of String 1 and String 3: ");        System.out.println(            str1.regionMatches(11, str3, 0, 13));         // Comparing str2 and str3        System.out.print(            "Result of Comparing of String 2 and String 3: ");        System.out.println(            str2.regionMatches(0, str3, 0, 13));    }}
Result of Comparing of String 1 and String 2: true
Result of Comparing of String 1 and String 3: false
Result of Comparing of String 2 and String 3: false
Example 2:
Java
// Java Program to find if substrings// or regions of two strings are equal import java.io.*; class CheckIfRegionsEqual {    public static void main(String args[])    {         // create three string objects        String str1 = new String("Abhishek Rout");        String str2 = new String("abhishek");        String str3 = new String("ABHISHEK");         // Comparing str1 and str2 substrings        System.out.print(            "Result of comparing String 1 and String 2 : ");        System.out.println(            str1.regionMatches(true, 0, str2, 0, 8));         // Comparing str1 and str3 substrings        System.out.print(            "Result of comparing String 1 and String 3 : ");        System.out.println(            str1.regionMatches(false, 0, str3, 0, 8));         // Comparing str2 and str3 substrings        System.out.print(            "Result of comparing String 2 and String 3 : ");        System.out.println(            str2.regionMatches(true, 0, str3, 0, 8));    }}
Result of comparing String 1 and String 2 : true
Result of comparing String 1 and String 3 : false
Result of comparing String 2 and String 3 : true
Note: The method returns false if at least one of these is true,
toffset is negative.
ooffset is negative.
toffset+len is greater than the length of this String object.
ooffset+len is greater than the length of the other argument.
ignoreCase is false, and there is some nonnegative integer k less than len such that:
 this.charAt(toffset+k) != other.charAt(ooffset+k)
ignoreCase is true, and there is some nonnegative integer k less than len such that:
 Character.toLowerCase(Character.toUpperCase(this.charAt(toffset+k))) != 
     Character.toLowerCase(Character.toUpperCase(other.charAt(ooffset+k)))
nishkarshgandhi
Java-String-Programs
Java-Strings
Java
Java Programs
Java-Strings
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Functional Interfaces in Java
Stream In Java
Constructors in Java
Different ways of Reading a text file in Java
Exceptions in Java
Convert a String to Character array in Java
Java Programming Examples
Convert Double to Integer in Java
Implementing a Linked List in Java using Class
How to Iterate HashMap in Java?