«regular-expression» 태그된 질문

정규 표현식 (보통 "regex"로 단축)은 문자열 내에서 패턴을 일치시키는 데 사용되는 선언적 언어로 작성된 표현식입니다.

3
정규식을 사용하여 찾기 및 바꾸기
많은 사용자 기본값이있는 파일이 있습니다. 텍스트를 변경하고 싶지만 matcher와 replacer를 만드는 데 어려움을 겪고 있습니다. 다음 예제를 사용하십시오. ############################################################################### # Trackpad, mouse, keyboard, Bluetooth accessories, and input # ############################################################################### # Trackpad: enable tap to click for this user and for the login screen defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true 나는 …

2
vim의 정규식 시스템에서 둘러 볼 수 있습니까?
vim에서 둘러보기 문을 작성하는 것이 유용한 상황이 많이 발생했습니다. 표준 lookaround 구문 ( (?=), (?!)등 ..)을 사용해 보았지만 vim이 이것을 지원하지 않는 것 같습니다. vim은 이러한 종류의 문장에 대해 동등한 구문을 가지고 있습니까?

3
정규식 매처를 욕심없이 만드는 방법?
파일의 텍스트를 대체하기 위해 정규식을 사용하려고합니다 (프로토콜 / 도메인 /으로 전체 URL을 대체하십시오). :%s/\(https\?:\/\/.*?\/\).*/\1/gc 불행히도 수량 화기 .*?를 이스케이프하려고하더라도 문자열과 일치하지 ?않습니까? 욕심없는 정량자는 어떻게 vim에서 탈출해야합니까?

1
Vim에서 유니 코드 결합 문자를 검색 할 수 있습니까?
문자가있는 파일이 있습니다 ã(소문자 + 틸드 결합). Encoding그리고 fileencoding둘 다 utf-8입니다. ga쇼 <a> 97, hex 61, octal 141 <~> 771, Hex 0303, Octal 1403 (단의 실제 결합 물결표 <>) 및 g8도시 61 + cc 83 검색 /a\%u0303은 정상적으로 작동합니다. 검색 \%u0303만하면 E486 패턴을 찾을 수 없습니다. 기본 문자를 검색하지 않고 …

5
파이썬 키워드 인수를 강조하는 Vim 구문 패턴
vim 정규 표현식을 배우는 데 어려움을 겪고 있습니다 (다른 정규 표현식도 잘 모릅니다). 주된 문제는 정규 표현식을 정의하는 것입니다. some_function_call(simple_value, keyword=value) 이 예에서 키워드. 따라서 단어가 괄호 안에 있고 그 뒤에 등호가 있으면 단어와 일치해야합니다. 다음 문제는 vim에서 구문 파일을 정의하는 방법입니다. 도움을 주셔서 감사하지만 배우기가 어렵지 않아야하므로 내 스스로 …

1
Vim 정규식에서 9 개 이상의 캡처 그룹을 허용하지 않는 이유는 무엇입니까?
에서 :h E65우리는 빔 교체 명령에 9 개 이상 캡처 그룹을 허용하지 않는 것을 볼 수 있습니다. 예를 들어 다음 명령이 작동합니다. s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)/\9\8\7\6\5\4\3\2\1 그러나 캡처 그룹이 하나 더있는 것은 실패합니다. s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)/\10\9\8\7\6\5\4\3\2\1 내 질문은 왜 실패하는지에 관한 것이 아니라 (Vim 하드 한계) Vim 에 왜이 한계가 있습니까? 또한 9 개 이상의 …

1
Vim의 정규식 매직은 잘 알려진 정규식 클래스와 호환됩니까?
많은 Unix 도구의 정규 표현식 구문은 종종 POSIX로 코드화 된 기본 및 확장 정규 표현식 (각각 BRE 및 ERE)이며 일부 최신 구현에서는 Perl 스타일 (PCRE가이를 구현 함)입니다. Vim의 마법 수준과 외부 적으로 정의되었지만 잘 알려진 클래스간에 일대일 대응이 있습니까? POSIX에 둘러보기가 포함되지 않은 것을 제외하고 \m는 BRE 처럼 보이고 \vERE입니다. …

2
어떻게 실행할 수 있습니까? 줄의 일부만 대체하지 마십시오.
나는 이와 같은 줄을 가지고있다 : function my_function(argument, another argument, but there are spaces) 공백 문자 (인수 이름 안에)를 밑줄로 바꾸고 싶습니다. 따라서 사용하고 싶습니다 : :s/\ /_/g 그러나 전체 줄에 적용하지 않고 커서 위치에서 시작하여 어떻게 선택할 수 있습니까? (또는 세번째 단어)?


1
Vim 정규 표현식 리터럴을 다른 마법 모드로 변환하는 방법이 있습니까?
문자열 리터럴에 magic Vim 정규식이 있으면 전체 정규식을 다른 마법 모드를 사용하는 대체 표현으로 변환하는 방법이 있습니까? 그래서 해당 정규식을 소스 코드에 붙여 넣을 수 있습니까? 예를 들어,이 마법 모드 패턴을 변환하려면 다음을 수행하십시오. '\m-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>' 매우 읽기 쉬운 모드로 만들기 : '\v-=<\d+L=>|0[xX][0-9a-fA-F]+>' 나는 종종 그것을 손으로 변환하려고 실수를합니다.

4
\ r과 \ n의 이론적 근거는 s 명령에서 다른 것을 의미합니까?
검색 할 때 \n줄 바꿈이며 \r캐리지 리턴 ( ^M)이지만 교체 할 때 \r줄 바꿈 \n은 null 바이트 ( ^@)입니다. 이 비대칭의 기원은 무엇입니까? 이 행동이 ... 최소한 말로 특이한 점을 감안할 때 (그리고 처음 잘못했을 때 상당히 비생산적 인) 나는 기괴한 역사적 이유가 있다고 생각합니다. (실제로이 동작을 "수정"하고 더 직관적 …

1
정규식 검색 패턴으로 접기
공백으로 구분 된 값 열이있는 일반 텍스트 파일이 있습니다. 이처럼 : AU 3030 .... ... .... AU 3031 .... ... .... AU 3032 .... ... .... AU 3033 .... ... .... IT 48100 ... .. ..... IT 40100 ... .. ..... IT 48123 ... .. ..... UK 3333 ... ... …

1
일치하는 줄 전후에 n 줄의 범위를 삭제 하시겠습니까?
반복적 인 구성 파일이 있고 정규식을 일치시키고 일치 전후에 줄 범위를 삭제하고 싶습니다. 하나의 명령으로 일치 항목을 삭제하고 싶습니다. 사용할 수 있습니다 ... :g/match/-1d ... 일치하기 전에 여러 줄을 삭제하는 경우가 많습니다 ... ... 그리고 그것을 몇 번의 호출로 결합하십시오 ... :g/match/+1d ... 경기 후 둘 이상의 줄을 삭제하려면 ... …


3
Vim 정규식에서 '\ zs'와 '\ @ <='원자의 차이점은 무엇입니까?
이것은 문서에서 얻은 것입니다. \zs앞의 정규식과 \@&lt;=일치시킨 후 "강조 표시된 부분을 시작합니다", 앞의 원자를 일치시킨 후 "강조 표시된 부분을 시작합니다" . 그러나 나는 이것의 미묘함을 정확하게 이해하지 못하므로 누구나 어떻게 조금 더 깊이 다른지 설명 할 수 있습니까? 이것이 내가 궁금해하는 이유입니다. /\_s\zsnnoremap 즉,이 선택 nnoremap공백 또는 시동의 라인 앞에 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.