2017-09-26 94 views

回答

0

讓我們來分析一下:

(RT|via) - 匹配「RT」或「內經」

其他的都是由(?:)定義非捕獲組,這意味着我們要檢查它的存在,但我們不」抓住它。

(?:\\b\\W*@\\w+)+)

\\b是一個字邊界

\\W*是一個非字字符。 *意味着匹配0或多個

匹配一個@

\\w+和一個或多個字的字符(字母,數字,連接器)

+的非捕獲組之外意味着可以有一個以上的這些非捕獲組織。

基本上你匹配「通過」或者「RT」,並刪除它(通過「」空你要替換的捕獲與文本),並匹配,但沒有捕捉一切遵循

非使用捕獲組,因此您可以在字符串中的不同位置匹配「RT」或「via」。 \\b\\W*@\\w+確保您在「RT」或「via」之後匹配twitter用戶名。這應該有助於避免在未用作實際重新推文時替換「RT」或「via」。

+0

這是一個非常elaboarte和答案的答案,thankyou @ Mako212。謝謝努力!你可以分享幫助你獲得信息的可能鏈接/資源嗎? –

+0

@KrishnaDhruv當然,[Rexegg.com](http://www.rexegg.com/regex-quickstart.html)是Regex的絕佳資源。我發現它在學習基礎知識方面非常有幫助,並且所有關鍵表達式都可以方便地組織在表中以供參考。 – Mako212

+0

太棒了。再次感謝:) –