2014-10-16 67 views
0

看起來很簡單,但我無法完成。 我的文本文件看起來像這樣:Emacs正則表達式 - 替換文本字符串,查詢替換正則表達式

Johnson Cary, 2009, This important article, 109 pages. 

Smith Tom, 2003, Much ado about nothing: a study, 89 pages. 

我需要這樣的:

Johnson Cary%2009%This important article%109 pages. 

任何特殊字符不太可能出現在文本就行了。最終目標是以.csv結尾,然後是.xls文件。

我使用

^\([^,]+\)\([,]\) 

找到第一個發生的歷史逗號,但是當我嘗試

\1 % 

它不工作來代替,也沒有任何形式的那種針對的緊密結合物。

任何幫助將非常歡迎!

非常感謝您提前。

+0

這不會代替*多於一個逗號,但它對第一個逗號可以很好地工作。它以什麼方式不適合你?請注意,這可能不是一種安全的方法(以任何格式在數據中允許使用/引用逗號)。 – phils 2014-10-16 22:41:50

+0

使用正則表達式時的提示是使用視覺反饋構建它們:http://wikemacs.org/wiki/Regexp – Ehvince 2014-10-17 09:50:12

回答

1

替換此:

^\([^,]*\), \([^,]*\), \([^,]*\), \(.*\)$ 

與此:

\1%\2%\3%\4 

,以獲得正確的結果。

+0

哇!電腦工作的神奇!我應該在3小時前問過。謝謝謝謝。來自巴黎的愛。 – Trying 2014-10-16 22:44:35