一、String包含方法的基本用法
Java中的String類提供了多種方法用於判斷一個字符串是否包含指定的子字符串。其中最常用的一個方法是contains()方法。該方法接收一個字符串參數,如果原始字符串中包含該子字符串則返回true,否則返回false。
public static boolean contains(CharSequence sequence, CharSequence search){ return indexOf(sequence, search) > -1; }
如果需要在字符串中查找多個字符,可以使用indexOf()和lastIndexOf()方法。這兩個方法都可以接收兩個參數:要查找的子字符串和開始查找的索引位置。indexOf()方法從前向後查找,lastIndexOf()方法從後向前查找。
public int indexOf(String str, int fromIndex) public int lastIndexOf(String str, int fromIndex)
二、String包含方法的高級用法
String包含方法也可以通過一些高級的操作來實現更為複雜的字符串匹配。
1. 正則表達式匹配
Java中的String類通過matches()方法支持正則表達式匹配。使用該方法,可以判斷字符串是否符合指定的正則表達式規則。
public boolean matches(String regex)
2. 字符串匹配算法
對於比較大的字符串需要進行比對的話,字符串匹配算法可以實現更加高效的匹配操作。Java中提供了多種常用的字符串匹配算法,包括暴力匹配算法、KMP算法、BM算法等。
三、String包含方法的實例
1. 判斷字符串中是否包含指定的子字符串
String mainStr = "Hello Java World"; String subStr = "Java"; boolean result = mainStr.contains(subStr); System.out.println(result); // 輸出:true
2. 使用正則表達式判斷字符串是否符合指定的規則
String phoneNumRegex = "^1[3-9]\\d{9}$"; String phoneNum = "13812341234"; boolean result = phoneNum.matches(phoneNumRegex); System.out.println(result); // 輸出:true
3. 使用BM算法查找大文本中的小文本
String mainStr = "Hello Java World, I love Java!"; String subStr = "Java"; BM bm = new BM(subStr); int index = bm.search(mainStr); System.out.println(index); // 輸出:6
4. 使用KMP算法查找大文本中的小文本
String mainStr = "Hello Java World, I love Java!"; String subStr = "Java"; KMP kmp = new KMP(subStr); int index = kmp.search(mainStr); System.out.println(index); // 輸出:6
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/251824.html