2011-01-25 4 views
0

に置き換え、正規表現を使用して、私はこの行を持っている:私は現在の時刻と日付を交換したいと思いますLisp式

;Last updated: Sunday, January 23, 2011 

を。だから、私は交換してください-regxpを次のキーの組み合わせで使用:

M-x replace-regexp RET \(Last updated: \)[A-Z ,]*[0-9 ,]* RET \1\,(format-time-string "%A, %B %e, %Y") 

しかし、これは次のような結果が得られます私は置き換える-正規表現の代わりに、古い日付の全体を置き換えるために取得できますか

;Last updated: Tuesday, January 25, 2011unday, January 23, 2011 

を最初の手紙のだけ?

答えて

2

あなたの正規表現は、大文字にのみ一致します。 Sundayuは小文字であるため、Last updated: Sにしか一致しないため、すべてが置き換えられます。

この問題を解決するには、a-zを文字範囲に追加します。

0

大文字のみを入力してください。

これを試してみてください:

M-x replace-regexp RET \(Last updated: \)[a-zA-Z ,]*[0-9 ,]* RET \1\,(format-time-string "%A, %B %e, %Y")