강좌 / 팁

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

2019.08.26 23:57

지후빠 조회:3375 추천: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 - - -
4278 윈 도 우| Windows 10, 12월 보안 패치(KB5021233) 설치 후 뜨는 블루... [5] 타천사둘리 1881 8 12-20
4277 윈 도 우| [실사] USB 테더링으로 PC 인터넷 랜 드라이버 설치하기! [8] 무월 1754 15 12-20
4276 윈 도 우| 관리자보다 더쎈 권한으로, 접근제한 에러 뚫기 [20] zerojiddu 4022 16 12-18
4275 윈 도 우| KB5018863 업데이트 제거하기(22621.1037로 버전 바꾸기) [5] 타천사둘리 1582 5 12-16
4274 윈 도 우| 윈도우 호스트 만들기 - 몇가지 추가 [11] 슈머슈마 1768 10 12-15
4273 윈 도 우| 윈도우 호스트에 온라인 광고차단 호스트 파일 추가, 기본 ... [14] 슈머슈마 2077 14 12-13
4272 윈 도 우| BCD 백업 및 복구 프로그램 입니다 [11] 지룡자 3103 25 12-10
4271 윈 도 우| [실사 ] 부트 메뉴에 PE 등록 하기 | Recovery 생성 백업&a... [14] 무월 2450 22 12-10
4270 윈 도 우| Windows 10에서 Windows 11 업데이트(업그레이드)를 차단하... [5] heykevin 2608 22 12-09
4269 윈 도 우| PE에서 NVME 드라이브 보이게 하기 [2] 좋게멋지게 1790 9 12-09
4268 윈 도 우| 핀 번호 암호 모를때 pe에서 간단한 작업후 로그인하고 핀... [4] heykevin 1758 6 12-08
4267 윈 도 우| [실사] 윈도우10,11 PIN번호 분실 암호 재설정으로 우회 로... [9] 무월 2570 11 12-07
4266 윈 도 우| [실사] 윈도우10,11 로그인 비밀번호 재설정 및 제거 [8] 무월 2001 16 12-07
4265 윈 도 우| [실사] 윈도우11&10 BCD 부팅 오류, 부트 복구(설치) [16] 무월 2455 24 12-05
4264 윈 도 우| [실사] 윈도우11 사용자 계정 만료 해제 방법! [4] 무월 1683 7 12-05
4263 윈 도 우| ISO 마운트 - 작업 - 꺼내기, ISO2WIM 추출 [5] 지후빠 1192 20 12-04
4262 윈 도 우| [실사] 윈도우10 사용자 계정 만료 해제 방법! [9] 무월 1457 15 12-04
4261 윈 도 우| 배치파일에서 내장명령어로 대기시간 구현 sleep [8] 지후빠 1013 14 12-01
4260 윈 도 우| 내용추가-WinNtSetup 사용하여 윈도우 설치용 VHD(가상 드... [5] 타천사둘리 1317 15 12-01
4259 윈 도 우| 정리하는 스크립트 V 0.2 [배포중단] [13] 졸린사자 1900 11 11-30
XE1.11.6 Layout1.4.8