%s@{fileID: \(213[0-9]*\)@\='{fileID: '.(submatch(1)-1900)@
vim 에서이 정규식 검색 및 바꾸기 명령을 사용하여 일치하는 각 ID에서 상수를 뺍니다.
VSCode에서 정규 표현식을 찾을 수 있지만 submatch
수학 및 대체를 어떻게 참조 할 수 있습니까? submatch(1)
VSCode에서 작동하지 않습니까?
감사.
답변
정규 표현식을 (foobar)
사용 $1
하면 바꾸기 입력 필드에 더 많은 그룹이있는 경우 등을 사용하여 첫 번째 그룹을 참조 할 수 있습니다 .
답변
예를 들어 벤자민의 대답을 강화하려면 :
Find Carrots(With)Dip(Are)Yummy
Replace Bananas$1Mustard$2Gross
Result BananasWithMustardAreGross
괄호 안에있는 것은 정규식 일 수 있습니다.
답변
다른 예를 추가하려면 다음을 수행하십시오.
img html 태그에서 src attr을 바꾸고 있었지만 src 만 바꾸고 img 선언과 src 속성 사이에 텍스트를 유지해야했습니다.
이미지에서와 같이 찾기 + 바꾸기 도구 (ctrl + h)를 사용했습니다.
답변
내 경우에는 $ 1이 작동하지 않았지만 $ 0은 내 목적에 적합합니다.
이 경우 문자열을 올바른 형식으로 바꾸어 Laravel에서 번역하려고 시도했지만 정렬하는 데 시간이 걸리기 때문에 다른 사람에게 유용 할 수 있기를 바랍니다.
Search: (?<=<div>).*?(?=</div>)
Replace: {{ __('$0') }}
답변
초보자에게는 허용되는 대답이 맞지만 VSC 또는 Regex에 익숙하지 않은 경우 약간 간결합니다.
따라서 이것이 첫 번째 접촉 인 경우 :
텍스트 를 찾아서 수정 하려면
-
“찾기”단계에서
I want to find (group1) and (group2)
괄호를 사용하여 “그룹 캡처”와 함께 정규식을 사용할 수 있습니다 . 이 같은 텍스트를 찾을 것입니다I want to find group1 and group2
,하지만 차이는 다음 참조 할 수group1
및group2
다음 단계에서 : -
은 “교체”단계에서를 통해 캡처 그룹을 참조 할 수 있습니다
$1
,$2
당신이 문장을 변경할 수 있도록, 등I found $1 and $2 having a picnic
어떤 출력하고자,I found group1 and group2 having a picnic.
노트:
-
문자열 대신 내부 또는 외부의 모든 것이
()
정규식이 될 수 있습니다. -
$0
전체 경기를 말합니다
답변
또 다른 간단한 예 :
Search: style="(.+?)"
Replace: css={css`$1`}
감정 / css로 HTML을 JSX로 변환하는 데 유용합니다!