2017-03-16 93 views
-2

我想退出一個字符串使用正則表達式,我需要一些幫助。我有一個很長的字符串,我有興趣從這個字符串中獲取所有的URL並向它們添加一個特定的字符串。例如:使用正則表達式編輯字符串

「你可以去www.google.com,或者如果你想有一個不同的發動機,你可以去https://www.bing.com,無論你喜歡」

該字符串必須成爲這樣的:

」您可以訪問www.google.com/whatever,或者如果您想要一個不同的引擎,可以去https://www.bing.com/whatever,無論你喜歡什麼「

謝謝你提前!

+1

你到目前爲止嘗試過什麼? –

+0

[正則表達式查找字符串中的URL]可能的重複(http://stackoverflow.com/questions/6038061/regular-expression-to-find-urls-within-a-string) –

回答

1

您可以通過以下方式做到這一點...

  • 使用[\w\.]*\w+\..*?(?=,|\s|$)\K
  • 搜索與/whatever

看到regex demo

1

你的問題是有趣的替代b你沒有說過要使用哪種語言,或者到目前爲止你做了什麼。看看我做了什麼,它使用java,它適用於我。

String mydata = "You can go to www.google.com, or if you want a different engine, you can go to https://www.bing.com, whichever you prefer"; 
String test = mydata.replaceAll("((\\b(https?|ftp|file)://)|www.)[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]", "$0/whatever"); 
System.out.println(test); 

基本上我實現了獲取匹配url的正則表達式。並附上任何要匹配的內容。