Java的indexOf
方法本身并不直接支持正則表達式。indexOf
是Java的String
類的一個方法,用于查找指定字符或子字符串在原字符串中首次出現的位置。如果要從字符串中查找符合正則表達式模式的子字符串,你需要使用java.util.regex
包中的Pattern
和Matcher
類。
下面是一個使用正則表達式查找子字符串的示例:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class Main {
public static void main(String[] args) {
String input = "This is a test string with regex pattern.";
String regex = "regex";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
System.out.println("Substring found at index: " + matcher.start());
} else {
System.out.println("Substring not found.");
}
}
}
在這個示例中,我們使用了Pattern.compile()
方法編譯正則表達式,然后使用pattern.matcher()
方法在輸入字符串中創建一個Matcher
對象。接下來,我們使用matcher.find()
方法查找符合正則表達式模式的子字符串,如果找到了,就輸出子字符串在原字符串中的起始索引。