소프트웨어 토커 정규식 질문 (2)
2021.05.15 17:47
정규식 글을 읽어보고 한가지 응용을 해봤는데요.
알파벳, 숫자가 아닌 문자의 뒤에 오는 알파벳 첫글자는 무조건 대문자.
찾기: (\W)(\w)
바꾸기:$1\U$2
이렇게 하니 잘되는데요.
예: Desk [abc - Desk@abc ==> Desk [Abc - Desk@Abc
근데 특정 문자는 예외나 변수를 둘 수 없나요?
정규식 글을 읽어봐도 Everything 에서 not 의미인 <!> 가 먹히질 않고 또 별도로 Not에 대응하는 명령도 없는 거 같더군요.
\W 조건에서 @, #만 특정해 포함시키지 않는 방법이 있을지..
한 발 더 나아가
\W 조건에서 @, #는 포함시키지 않지만 \(공백)@|\(공백)# 일때는 포함시킬 수는 있는지 궁금합니다.
댓글 [8]
-
줄리아니 2021.05.15 18:28
-
윈도면도 2021.05.15 19:36
제가 이해를 잘 못했는지, 이렇게 저렇게 적용해봐도 영 안되네요.
1. 기호나 특수문자 뒤의 첫알파벳은 대문자로 하려는 시도구요.
이 방법은 알겠는데요. 찾기 (\W)(\w) /// 바꾸기 $1\U$2
예 : [abc] ♣abc - abc @abc - abc@abc - abc #abc - abc#abc
결과= [Abc] ♣Abc - Abc @Abc - Abc@Abc - Abc #Abc - Abc#Abc
2. 근데 1번 조건에서 \W 조건에 포함되는 @ #를
공백@|공백#일때는 포함되게 하고 공백없이 @|#일때는 포함시키지 않으려 하는데요
찾기 (\W)(\w) /// 바꾸기 $1\U$2 적용했을 때 결과가
예 : [abc] ♣abc - abc @abc - abc@abc - abc #abc - abc#abc
결과= [Abc] ♣Abc - Abc @Abc - Abc@abc - Abc #Abc - Abc#abc
이렇게 만들려하는데..
답변을 토대로 이리저리 해봐도 잘 안되네요. -
줄리아니 2021.05.15 20:18
제가 문제를 잘못 이해했군요
이렇게 해보세요두번에 나눠서 하면 편합니다
1번실행후 2번 실행하세요 순서바뀌면 제대로 된 결과값이 나오지 않습니다
1: 공백@ or 공백# 일때 다음문자 대문자로 바꾸기
(\s\@|\s\#)([a-zA-Z])
2: @나 #를 제외한 특수문자후 다음문자 대문자로 바꾸기
([^\w\@\#])([a-zA-Z])
-
윈도면도 2021.05.15 21:07
ㅎ
아.. 이렇게 하니 잘되네요.
한줄로는 정규식으로도 안되는거였군요;; 열심히 연구해봤는데 헛물켰네요.
잘 해결되었습니다. 고맙습니다.
-
줄리아니 2021.05.15 21:27
2줄로 하는것이 간단한 방법이지만 정규식 고수라면 한줄로도 가능합니다
천천히 간단한것 부터 공부해 보십시요
정규식 지원하는 프로그램들이 많기 때문에 알아두시면 도움이 많이됩니다
-
윈도면도 2021.05.15 21:34
한가지만 더 여쭙자면
(1)(2)
$1\U$2
대충 이런구조에서 $1$2가 대응하는데요.
(1)(2)(3)(4)
$1\U$2|$3\U$4
이런식의 정규식 구조도 가능한건가요?
-
줄리아니 2021.05.15 21:46
가능합니다
정규식이 어떤 라이브러리를 쓰냐에 따라 조금씩 차이가 있는데요Emeditor에서는 (1) ... (99) 도 가능합니다
-
윈도면도 2021.05.15 21:49
그렇군요~~.
도스처럼 통일된게 아니고 프로그램미다 지원형식이 조금 다른가보네요.
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
» | 소프트웨어| 토커 정규식 질문 (2) [8] | 윈도면도 | 197 | 05-15 |
14609 | 소프트웨어| 한글화 [1] | Icarus | 374 | 05-15 |
14608 | 소프트웨어| 광고가 왜 여기서? [2] | bee | 348 | 05-15 |
14607 | 소프트웨어| 부트메뉴 진입방법에 대한 문의 입니다 [3] | 좋은데이 | 317 | 05-15 |
14606 | 소프트웨어| RPT 파일 해결 부탁드립니다~ [2] | 이어도 | 386 | 05-14 |
14605 | 소프트웨어| Ventoy USB 듀얼 부팅 질문 [2] | 현출 | 332 | 05-14 |
14604 | 소프트웨어| 토탈커맨더 리네임 정규식 문의 [10] | 윈도면도 | 312 | 05-14 |
14603 | 소프트웨어| 버추얼박스 usb 인식... [1] | 구름비 | 214 | 05-14 |
14602 | 소프트웨어| WD외장하드 완전포맷 가능한가요 [15] | tbvpfm | 908 | 05-13 |
14601 | 소프트웨어| vmware에서 뱅킹사용 시 키보드 보안문제요 [11] | 『ⓖⓤⓝ』 | 320 | 05-13 |
14600 | 소프트웨어| 외장하드 포맷형식 [18] | tbvpfm | 462 | 05-13 |
14599 | 소프트웨어| 리팩(Repack),포터블 궁금해요 [4] | 프록시마 | 1098 | 05-13 |
14598 | 소프트웨어| 컴을 하다보니 별의별일이 다생김니다. [10] | QOR | 823 | 05-13 |
14597 | 소프트웨어| ssdkeeper, primocache 문의 드려요... [3] | 평화 | 169 | 05-12 |
14596 | 소프트웨어| XYPlorer 사용하시는 분 궁금한거 있습니다.. [2] | 카니 | 182 | 05-12 |
14595 | 소프트웨어| 인텔 빠른 스토리지 기술 설치시 질문 [3] | mkv | 248 | 05-12 |
14594 | 소프트웨어| ublock으로 유투브광고차단했는데 오늘 갑자기 광고나오네요 [2] | 컴알못러 | 298 | 05-12 |
14593 | 소프트웨어| 메*보드님 ventoy 지역화 관련 [3] | 복원솔루션 | 231 | 05-12 |
14592 | 소프트웨어| MediCat 으로 안전부팅 가능한지요? [1] | 스티어 | 144 | 05-11 |
14591 | 소프트웨어| 삭제 어려운 프로그램 도움이 필요합니다. [5] | 오호라7 | 680 | 05-11 |
[]: 문자 클래스를 뜻합니다
^: 문장의 시작을 뜻 하기도 하지만 문자 클래스 안에 쓰면 Not 의 의미입니다
\s: 공백을 뜻합니다
\w: 알파벳 + 숫자 + _
\W: 알파벳 + 숫자 + _ 을 제외한 모든 문자
\W 조건에서 @, #만 특정해 포함시키지 않는 방법이 있을지..
[^\w\@\#]
2번은
\s\@|\s\#