2012-10-09 39 views
1

我想從句子中忽略unicode字符(空格),任何幫助都將被高度讚賞。正則表達式忽略空格unicode(%20)

示例 -

utmctr=google%20search%20keyword 

所需的輸出 -

google search keyword 

我試圖用\p{Z}要做到這一點,但無濟於事。

非常感謝

+0

那麼你不想忽視,你想用空格來替換%20 ......同樣在你期望的輸出結果中,你移除了'utmctr =',這是否也是這種想要的行爲? – m0skit0

+0

是的,我只需要搜索詞。謝謝。 –

+0

你實際上是在尋找'decodeURI'? – Bergi

回答

0

你只是想去掉20%的字符串,並用空格代替它,對嗎?然後使用(%20)作爲正則表達式應該使用全局替換選項(g),並用空格替換它。

2

所以,你想要做的2所取代:刪除開頭的標識符utmctr=和替代%20,所以你需要兩個步驟:

  1. 搜索:"utmctr=";替換:""
  2. 搜索:%20;替換:" "

根據您使用的語言(例如Perl),您不需要雙引號。

編輯:既然你使用的是Java:

String input = "utmctr=google%20search%20keyword"; 
String output = input.replaceAll("utmctr=", "").replaceAll("%20", " "); 

replaceAll()使用正則表達式,但在你的情況下,你真的不需要使用特殊字符的正則表達式。

+0

感謝您的支持,但恐怕我擁有的只是帶有後端語言Java的Regex前端工具。我正在使用這樣的東西 - 。* utmctr =(。*?);這給了我谷歌%20search%20關鍵字。 –

+0

這沒問題,交配。如果是Java,則可以使用'String.replaceAll()'。我會更新我的答案。 – m0skit0