나는 모든 일치 (단 하나의 문자)를 대문자 char로 바꿀 수 있기를 희망하는 정규 표현식을 작성했습니다. EditPad Pro를 사용하고 있습니다 (단, 한 번만 수행하면되므로 무료로 시도 할 수있는 한 다른 도구를 사용하려고합니다).
배경 : 대소 문자를 구분하는 응용 프로그램에서 사용하는 매우 긴 텍스트 파일이 있으며 일부 단어는 대문자 char 대신 소문자로 시작하여 응용 프로그램이 중단됩니다. 이 작업은 수작업으로 수행하는 데 시간이 오래 걸리고 (사악한) 소문자 char의 발생이 매우 구체적이기 때문에 정규 표현식없이 수행하는 것이 매우 복잡합니다.
나는 select 정규 표현식을 작성했으며 이제는 역 참조와 함께 사용할 수 있지만 ($ 1은 잘 작동 함) 대문자 char로 바꿀 수는 없습니다. \ u $ 1과 같은 것이 작동한다고 생각했지만 EditPad Pro에는 없습니다.
무료 도구를 사용 하여이 작업을 수행 할 수없는 경우 대안은 C #에서 수행하는 것이지만 컴파일러가 아닌 서두르고 Express 버전을 먼저 다운로드해야합니다. … 그러한 기능을 지원하는 도구를 찾는 것이 좋습니다!
감사합니다!
답변
TextPad를 사용하면이 작업을 수행 할 수 있습니다.
예:
test this sentence
찾을 내용 : 다음으로 \([^ ]*\) \(.*\)
교체 :\U\1\E \2
는 \U
다음의 모든 문자가 상위 원인이 될 것이다
의 \E
를 해제\U
결과는 다음과 같습니다.
TEST this sentence
답변
이 스레드는 EditPad Pro에 관한 것이지만 자바 스크립트 정규 표현식과 동일한 요구가 있기 때문에 여기에 왔습니다.
여기 같은 팁이 필요한 사람들을 위해 replace 인수로 함수 또는 람다를 사용할 수 있습니다.
아래 함수를 사용하여 CSS 이름을 -
자바 스크립트 "border-top"
로 변환 합니다. 예를 들어 다음과 같이 변환됩니다 "borderTop"
.
s = s.replace(/\-[a-z]/g, x => x[1].toUpperCase());
답변
EditPad Pro 및 PowerGREP에는 역 참조 사례를 변경할 수있는 고유 한 기능이 있습니다.
\U1
첫 번째 역 참조를 대문자로,\L1
소문자
\F1
로, 첫 문자를 대문자로, 나머지를 소문자로 삽입합니다. 마지막으로\I1
대문자로 된 각 단어의 첫 글자와 소문자로 다른 글자를 삽입합니다.
출처 : Goyvaerts, Jan (2006). 정규 표현식 : 전체 튜토리얼 . Lulu.com. 피. 35 . ISBN 1411677609. Google 도서. 2010 년 6 월 25 일에 확인 함.
답변
jEdit의 찾기 및 바꾸기 대화 상자에서 “BeanShell 스 니펫의 값 리턴”옵션을 사용하여 jEdit에서이를 수행 할 수 있습니다. 검색 " [a-z]"
하고 " _0.toUpperCase()"
따옴표없이 바꾸십시오.
답변
또한 처음 사용 경기의 편지 활용할 수 \I1
및 \I2
등 대신을 $1
하고 $2
.
답변
그냥 메모장에 대한 또 다른 ussage 예 ++ (정규 표현식 검색 모드)
Find: (g|c|u|d)(et|reate|pdate|elete)_(.)([^\s (]+)
Replace: \U\1\E$2\U\3\E$4
예:
get_user -> GetUser
create_user -> CreateUser
update_user -> UpdateUser
delete_user -> DeleteUser