第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Go regexp:在出現(xiàn)后查找下一項(xiàng)

Go regexp:在出現(xiàn)后查找下一項(xiàng)

Go
尚方寶劍之說(shuō) 2021-09-13 20:13:57
我是 Go 初學(xué)者,我一直在玩正則表達(dá)式。例子:r, _ := regexp.Compile(`\* \* \*`)r2 := r.ReplaceAll(b, []byte("<hr>"))(將所有* * *s替換為<hr>s)我不知道該怎么做的一件事是在出現(xiàn)后找到該next項(xiàng)目。在 JavaScript/jQuery 中,我曾經(jīng)這樣做過(guò):$("#input-content p:has(br)").next('p').doStuff()(在里面有標(biāo)簽的標(biāo)簽p tag之后找到下一個(gè))。pbr在 Go 中完成相同任務(wù)的最簡(jiǎn)單方法是什么?說(shuō),在* * *?之后找到下一行?* * *Match this line
查看完整描述

1 回答

?
RISEBY

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊

您需要使用捕獲組來(lái)捕獲該句子的內(nèi)容:


package main


import "fmt"

import "regexp"


func main() {


    str := `

* * *


Match this line

`   

    r, _ := regexp.Compile(`\* \* \*\n.*\n(.*)`)


    fmt.Println(r.FindStringSubmatch(str)[1])

}

輸出:


Match this line

解釋?zhuān)?/p>


\* \* \*    Matches the first line containing the asterisks.

\n          A newline.

.*          Second line. Can be anything (Likely the line is simply empty)

\n          A newline

(           Start of capturing group

.*          The content of interest

)           End of capturing group

在評(píng)論中,您詢問(wèn)如何將第三行替換為<hr/>. 在這種情況下,我將使用兩個(gè)捕獲組 - 一個(gè)用于感興趣線之前的部分,另一個(gè)用于線本身。在替換模式中,您可以使用$1結(jié)果中的第一個(gè)捕獲組的值。


例子:


package main


import "fmt"

import "regexp"


func main() {


    str := `

* * * 


Match this line

`   

    r, _ := regexp.Compile(`(\* \* \*\n.*\n)(.*)`)


    str = string(r.ReplaceAll([]byte(str), []byte("$1<hr/>")))


    fmt.Println(str)

}


查看完整回答
反對(duì) 回復(fù) 2021-09-13
  • 1 回答
  • 0 關(guān)注
  • 230 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)