강좌 / 팁

소프트웨어 엑셀에서 정규식 사용, 내장 함수 추가

2019.08.26 23:57

지후빠 조회:3376 추천:4

하단에 내장함수로만 해결한 내용을 추가하였습니다. 혹시 오류있으면 댓글로 남겨주세요~.

 


 

안녕하세요. 질문 https://windowsforum.kr/12070953 에 어울릴 것 같아서 간단히 정리하여 보았습니다.

 

[참고하실만한 내용]

숫자와 영문이 혼합되어 있는 셀에서 영문만 골라내는 수식과 사용자정의함수; https://dorobo.tk/492

구글에서 "엑셀 정규식"으로 검색하면 자료가 많네요;

https://www.google.co.kr/search?q=%EC%97%91%EC%85%80+%EC%A0%95%EA%B7%9C%EC%8B%9D

 

[설명]

사용자 정의 함수로 정규식을 사용할 수 있게 합니다. 엑셀파일 열어서 alt + F11 누르면 함수를 볼 수 있습니다.

 

1. FindENG 사용자 함수; 질문에 맞게 영문 시작 문자를 찾아서 반환합니다.

- FIND(FindENG(A2),A2) 함수로 위치를 반환합니다.

 

2. RegExpFind 사용자 함수; 정규식 패턴을 직접 입력하여 문자를 찾아서 반환합니다.

- FIND(RegExpFind("[a-z]",A4),A4) 1번과 같은 결과를 냅니다.

 

3. 2번의 예로써 FIND(RegExpFind("[a-z]+",A6),A6) 은 연속된 영어 문자열을 찾아서 반환합니다.

- FIND(RegExpFind("[a-z]+",A6),A6) 단어의 시작 위치를 반환합니다.

 

4. 한글 단어 찾는 예제입니다.

 

언젠가 해보고 싶었던 것이라 찾아보았습니다. ^^

 

엑셀에서 정규식 사용.jpg

 

PS. 숫자 아닌 문자 시작 위치를 찾는 것은 다음과 같이 내장 함수로만 가능합니다. 참고 하세요~.

=MATCH(TRUE,ISERROR(VALUE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))),0)

입력할때 ctrl+shift+enter 하여서 배열 수식으로 입력해야 합니다. 그럼 mid 함수로 낱자로 모두 분리하여

value 함수로 숫자가 아닌 위치에서 에러가 나고 그 에러 위치를 match 함수가 잡아냅니다.

출처; https://www.extendoffice.com/documents/excel/3790-excel-find-position-of-first-letter-in-string.html

 


 

주말에 시간되어 내장 함수로만 영문 위치를 찾도록 하여 보았습니다. 원 질문자님이 보실지 모르겠지만 도움되셨으면 합니다.

영문시작위치찾는함수.xlsx

=MATCH(3,ERROR.TYPE((INDIRECT(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)&"1"))),0)

위 함수중 A1 부분 2곳만 문자열이 있는 셀주소로 고치고 배열함수로 입력하세요. ctrl + shift + enter

영문시작위치찾는함수.jpg

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4480 윈 도 우| 원격 데스크톱..., 자격증명이 작동하지 않습니다... [1] 사가르마타 282 1 04-12
4479 윈 도 우| Windows 업데이트를 사용하여 데이터를 잃지 않고 Windows ... [2] update VᴇɴᴜꜱGɪ 317 2 04-23
4478 소프트웨어| purebasic 함수 인수 기본 값 설정으로 생략하기 [2] 입니다 348 9 03-24
4477 소프트웨어| pureBasic 외부 함수 호출 [1] 입니다 349 9 03-25
4476 소프트웨어| pureBasic 포인트 기본 이해 [3] 입니다 358 10 03-25
4475 모 바 일| #Kinemaster강좌, Clip&Audio 자르기 이동 늘리기, Un... 무림거사 399 1 08-02
4474 소프트웨어| purebasic Macro 기본 [3] 입니다 411 9 03-25
4473 모 바 일| Kinemaster 강좌 -Clip을 "즐겨찾기"에 등록 &am... 무림거사 420 1 08-11
4472 윈 도 우| [실사] 윈도우8.1 프로 VHD 설치 방법 [5] 무월 422 6 05-08
4471 소프트웨어| purebasic 기본적인 변수, 함수 선언 [5] 입니다 450 11 03-24
4470 소프트웨어| Bcd부팅항목 메뉴 숨기기 [3] 카멜 454 9 03-04
4469 모 바 일| Kinemaster강좌 #글자 입력방법, #링 속도 줄이는 방법 무림거사 461 1 08-03
4468 모 바 일| Kinemaster 화살표 Arrow 표시하는 2가지 방법 무림거사 471 1 08-08
4467 모 바 일| #Kinemaster 강좌, 기기성능 에 따른 출력해상도, 출력화질... [1] 무림거사 488 1 08-13
4466 모 바 일| Mobile PowerDirector강좌 #크로마키 무대 제작방법 특강 [1] 무림거사 524 2 06-24
4465 소프트웨어| dup2patcher.dll 디컴파일링-2 [3] sunshine 541 5 07-21
4464 윈 도 우| vbs_Merge Lines(Drag-n-drop) [12] 레마클로 545 4 03-03
4463 소프트웨어| 부팅항목숨기기,보이기-VHDman Lite0.0.8 [3] 카멜 556 10 03-06
4462 기 타| 커스텀 드라이브 아이콘 적용해 볼까? [3] 내꼬 559 5 03-09
4461 소프트웨어| winpe 시스템 계정에서 Edge 상위버전 적용 [8] sunshine 566 15 07-24
XE1.11.6 Layout1.4.8