Java中提供了許多方法來(lái)匹配字符串的開(kāi)始和結(jié)束,通過(guò)這些方法可以方便地判斷一個(gè)字符串是否是另一個(gè)字符串的子串等。
// 判斷字符串是否以指定的前綴開(kāi)頭 String str = "hello world"; boolean flag = str.startsWith("hello"); // 返回 true
可以看到,startsWith()方法可以檢查字符串是否以指定的前綴開(kāi)頭。接下來(lái),我們?cè)倏匆粋€(gè)方法,endsWith()。
// 判斷字符串是否以指定的后綴結(jié)尾 String str = "hello world"; boolean flag = str.endsWith("world"); // 返回 true
endsWith()方法可以判斷字符串是否以指定的后綴結(jié)尾。另外,正則表達(dá)式也可以用來(lái)匹配字符串的開(kāi)頭和結(jié)尾。
// 判斷字符串是否以字母開(kāi)頭 String str = "hello world"; boolean flag = str.matches("^[a-zA-Z].*"); // 返回 true
上述代碼使用正則表達(dá)式“^ [a-zA-Z]. *”來(lái)匹配字母開(kāi)頭的字符串。其中“^”表示匹配字符串的開(kāi)始,“[a-zA-Z]”表示匹配任意一個(gè)字母, “.*”表示匹配除換行符外的任意數(shù)量字符。
// 判斷字符串是否以數(shù)字結(jié)尾 String str = "hello world 123"; boolean flag = str.matches(".*\\d$"); // 返回 true
上述代碼使用正則表達(dá)式“.*\\d$”來(lái)匹配以數(shù)字結(jié)尾的字符串。其中“\\d”表示匹配任意一個(gè)數(shù)字,“$”表示匹配字符串的結(jié)尾。
總之,Java提供的startsWith()和endsWith()方法以及正則表達(dá)式都可以用來(lái)匹配字符串的開(kāi)始和結(jié)尾,開(kāi)發(fā)者可以根據(jù)實(shí)際需求來(lái)選擇。