String 类的 regionMatches() 方法有两个变体,可用于测试两个字符串区域是否匹配或相等。该方法有两种变体,一种是区分大小写的测试方法,另一种是忽略大小写的方法。
用法:
1.区分大小写的测试方法:
public boolean regionMatches(int toffset, String other, int offset, int len)
2.它可以选择考虑或忽略case方法:
public boolean regionMatches(boolean ignoreCase, int toffset, String other, int offset, int len)
参数:
- ignoreCase:如果为 true,则在比较字符时忽略大小写。
- toffset:该字符串中子区域的起始偏移量。
- other:正在比较的字符串参数。
- offset:字符串参数中子区域的起始偏移量。
- len:要比较的字符数。
返回值:
String 对象的子字符串与参数 other 的子字符串进行比较。如果这些子字符串表示相同的字符序列,则结果为 true,当且仅当ignoreCase 为 true 时忽略大小写。要比较的此 String 对象的子字符串从索引 toffset 开始,长度为 len。要比较的 other 的子字符串从索引偏移量开始,长度为 len。当且仅当以下至少一项为真时,结果为假
示例 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
示例 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
注意:如果其中至少一项为 true,则该方法返回 false,
- toffset 为负。
- 偏移量为负。
- toffset+len 大于此 String 对象的长度。
- offset+len 大于另一个参数的长度。
- ignoreCase 为 false,并且存在一些非负整数k小于 len 使得:
this.charAt(toffset+k) != other.charAt(ooffset+k)
- ignoreCase 为 true,并且有一些非负整数k小于 len 使得:
Character.toLowerCase(Character.toUpperCase(this.charAt(toffset+k))) != Character.toLowerCase(Character.toUpperCase(other.charAt(ooffset+k)))
相关用法
- Java String regionMatches()用法及代码示例
- Java String replace()用法及代码示例
- Java String replaceAll()用法及代码示例
- Java String replaceFirst()用法及代码示例
- Java String repeat()用法及代码示例
- Java String compareToIgnoreCase()用法及代码示例
- Java String compareTo()用法及代码示例
- Java String split()用法及代码示例
- Java String length()用法及代码示例
- Java String substring()用法及代码示例
- Java String equals()用法及代码示例
- Java String equalsIgnoreCase()用法及代码示例
- Java String contains()用法及代码示例
- Java String indexOf()用法及代码示例
- Java String trim()用法及代码示例
- Java String charAt()用法及代码示例
- Java String toLowerCase()用法及代码示例
- Java String concat()用法及代码示例
- Java String valueOf()用法及代码示例
- Java String matches()用法及代码示例
- Java String startsWith()用法及代码示例
- Java String endsWith()用法及代码示例
- Java String isEmpty()用法及代码示例
- Java String intern()用法及代码示例
- Java String getBytes()用法及代码示例
注:本文由纯净天空筛选整理自abhishekr0ut大神的英文原创作品 Java String regionMatches() Method with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。