您好,登錄后才能下訂單哦!
這篇“Kotlin語言編程Regex正則表達(dá)式怎么使用”文章的知識點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Kotlin語言編程Regex正則表達(dá)式怎么使用”文章吧。
回想一下,在學(xué)Java時(shí)接觸的正則表達(dá)式,其實(shí)Kotlin中也是類似。只不過使用Kotlin 的語法來表達(dá),更為簡潔。正則(Regex)用于搜索字符串或替換正則表達(dá)式對象,需要使用Regex(pattern:String)類。 在Kotlin中 Regex 是在 kotlin.text.regex 包。
構(gòu)造函數(shù) | 描述 |
---|---|
Regex(pattern: String) | 給定的字符串模式創(chuàng)建正則式。 |
Regex(pattern: String, option: RegexOption) | 給定的字符串模式創(chuàng)建一個(gè)正則式并給出單個(gè)選項(xiàng) |
Regex(pattern: String, options: Set<RegexOption>) | 給定的字符串模式和給定選項(xiàng)集創(chuàng)建正則表達(dá)式 |
方法 | 描述 |
---|---|
fun containsMatchIn(input: CharSequence): Boolean | 包含至少一個(gè)輸入字符 |
fun find(input: CharSequence, startIndex: Int = 0): MatchResult? | 返回輸入字符序列中正則表達(dá)式的第一個(gè)匹配項(xiàng),從給定的startIndex開始 |
fun findAll(input: CharSequence, startIndex: Int = 0): Sequence<MatchResult> | 返回輸入字符串中所有出現(xiàn)的正則表達(dá)式,從給定的startIndex開始 |
fun matchEntire(input: CharSequence): MatchResult? | 用于匹配模式中的完整輸入字符 |
fun matches(input: CharSequence): Boolean | 輸入字符序列是否與正則表達(dá)式匹配 |
fun replace(input: CharSequence, replacement: String): String | 用給定的替換字符串替換正則表達(dá)式的所有輸入字符序列 |
這里通過調(diào)用幾個(gè)常見正則函數(shù)進(jìn)行幾組數(shù)據(jù)查找,展示常用正則表達(dá)式用法:
使用場景:判定是否包含某個(gè)字符串
val regex = Regex(pattern = "Kot") val matched = regex.containsMatchIn(input = "Kotlin") 運(yùn)行結(jié)果: matched = true
使用場景:匹配目標(biāo)字符串
val regex = """a([bc]+)d?""".toRegex() val matched1 = regex.matches(input = "xabcdy") val matched2 = regex.matches(input = "abcd") 運(yùn)行結(jié)果: matched1 = false matched2 = true
使用場景:返回首次出現(xiàn)指定字符串
val phoneNumber :String? = Regex(pattern = """\d{3}-\d{3}-\d{4}""") .find("phone: 123-456-7890, e..")?.value 結(jié)果打印: 123-456-7890
使用場景:返回所有情況出現(xiàn)目標(biāo)字符串
val foundResults = Regex("""\d+""").findAll("ab12cd34ef 56gh7 8i") val result = StringBuilder() for (text in foundResults) { result.append(text.value + " ") } 運(yùn)行結(jié)果: 12 34 56 7 8
使用場景:將指定某個(gè)字符串替換成目標(biāo)字符串
val replaceWith = Regex("beautiful") val resultString = replaceWith.replace("this picture is beautiful","awesome") 運(yùn)行結(jié)果: this picture is awesome
以上就是關(guān)于“Kotlin語言編程Regex正則表達(dá)式怎么使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。