2011-12-01 4 views
0

나는 query-replace-regexp에 대해 말하고 있습니다. 내가 할 수있는 vi 경우 줄의 시작 부분에 추가하려면 :Emacs : 줄 끝 부분에 어떻게 추가합니까?

:%s/^/myBeginning 

vi의 각 줄의 끝에 추가하려면 하나를 수행 할 수 있습니다

:%s/$/myEnd 

직접 유사체가 emacs에서 작동하지 않습니다 : ^$ (추가 문자 없음)과 일치하지 않습니다. re-builder에서 가장 쉽게 볼 수 있습니다. ^myBeginning으로 바꾸면 아무 것도 바뀌지 않습니다. 그래서 내 질문은 - 그것을 할 수있는 방법 Emacs - 어떻게 단어의 처음/끝에 줄을 추가 할 수 있습니까?

편집는 : cource의

그것은 내가 할 경우 작동합니다

Find : ^\(.*\) 
Replace: myBeginning\1 

Find : \(.*\)$ 
Replace: \1myEnd 

내 요점은 vi에 있다는 것입니다 - 나는 그나마 '작성해야합니다 : \(.*\). $을 찾기 문자열로 사용하거나 처음에 ^을 사용하면 문제가 없습니다. 그래서 이맥스에서 쉽게 할 수 있다면 궁금해했다.

P. emacs -Q도 같은 동작을합니다.

편집 2 :

나의 하나님 오 - 작동! 그것은 아무것도 보이지 않으며, 나는 !을 마침내 누르는 것을 잊었다.

+1

그래서 무엇을 사용하고 있습니까? 'C-M- % $ myEnd'? 'C-M- % (. *) $ \ 1myEnd'? – Viruzzo

+0

아직 조리법을 알려주지 않았습니다. 네가하는 말이 내게 효과가 없다. '^'를 문자열로 바꿀 수 있습니다. –

답변

4

나는 emacs -QC-M- %의 또는 M-Xquery-replace-regexp와 함께 할 수 있습니다. 예상대로 작동합니다. emacs -Q으로 시작하여 이것이 어떻게 작동하지 않는지에 대한 방법을 제시 할 수 있습니까?

관련 문제