2012-04-27 4 views
2

검색 및 바꾸기를 사용하여 행의 첫 번째 쉼표 뒤에 숫자 1을 추가하는 가장 좋은 방법은 무엇입니까? 각 줄마다 여러 개의 쉼표 (csv)가 있습니다. 각 줄의 첫 번째 쉼표 뒤에 값 1을 삽입하고 싶습니다.VIM 검색 및 바꾸기 regex

답변

7

난 그냥 :s/,/,1/ 그것을 할 전망이다. g 옵션을 사용하지 않으면 행당 발견 된 첫 번째 인스턴스 만 대체합니다.

Do :%s/,/,1/ 전체 파일에 적용하려면 첫 번째 옵션은 한 줄에 대해서만 수행합니다.

+0

실제로 Mac OSX Mountain Lion의 vim에서/g 옵션을 사용하지 않는 것이 같은 줄에있는 정규식을 여러 번 바꾸는 유일한 방법이었습니다. 매우 이상합니다./g 옵션은 예상대로 작동하지 않습니다./g을 삭제하면 한 줄에 여러 개의 일치 항목을 검색하고 바꿀 수있었습니다. – netpoetica

0

이 정규식 /(^.*?,)/gm을 사용하여 $11을 바꾸십시오. 각 행에 대해 행의 처음부터 모든 것을 첫 번째 쉼표까지 캡처합니다. 이것은 $1으로 표시된 그룹 1에서 캡처됩니다. 그룹 1 인 $11으로 바꾼 다음 숫자 1을 입력하십시오. 여기

확인 : http://regexr.com?30pjf