본문 바로가기

Regular Expression11

Powershell switch case regular expression 사용 Windows Powershell 사용시 regular expression 을 사용하면 텍스트 처리시 정말 다양한 것들을 자동화 할 수가 있습니다. Powershell regular expression 관련하여 검색을 하다 보니, 아래 주소에서 Powershell regular expression 관련 좋은 글을 발견 할 수 있었습니다. https://powershellexplained.com/2017-07-31-Powershell-regex-regular-expression/#regex-matches 그 중에서 Powershell 에서만 사용할 수 있는 굉장히 특이한 사용법에 대해서 소개하려 합니다. 보통의 다른 언어에서 switch case 를 사용하는 경우 정확하게 매칭이 되는 경우에만 사용됩니다... 2019. 7. 14.
Notepad++ 에서 regular expression 으로 찾기 바꾸기시 그룹 지정 방법 Windows 에디터로 어떤 프로그램을 주로 사용하시나요? 저는 Notepad++ 를 즐겨 사용하는데요~ 텍스트 편집시 자주 사용하는 기능으로 찾기 바꾸기를 많이 하실텐데~ 오늘은 Notepad++ 에서 regular expression 으로 찾기 바꾸기시 그룹 지정 방법에 대해 소개해 보려 합니다. Chocolatey 를 사용하여 프로그램 설치시 아래와 같이 “choco install 프로그램명” 이라는 명령어를 주로 사용하는데~ 가끔 y 를 눌러줘야 하는 경우가 많이 있습니다. 이럴때 편리하게 하기 위해 -y 라는 옵션을 주는데 choco 로 시작하는 줄의 끝에만 -y 를 넣어주는 정규표현식을 작성해 봤습니다. 위 예는 notepad++ 의 매크로를 사용해서도 해결 할 수 있지만 ~ 오늘은 정규표현식.. 2018. 9. 16.
POSIX 스타일 Regular Expression 에서 숫자 매칭 방법 저는 컴퓨터 사용 시 정규표현식을 많이 사용하는 편입니다. 처음 정규 표현식에 대해 공부할때 Perl을 사용하였습니다. 그러다 보니 평소에 펄 스타일의 정규표현식을 주로 시도하는 편인데~ 오늘 알고보니 POSIX 에서는 일부 Perl 스타일의 정규표현식들이 정상적으로 동작하지 않더군요. Bash Shell 에서 정규표현식을 사용할 때 숫자를 매칭 할 때는 Perl 스타일로 \d 를 사용하면 안 된다는 것을 알게 되었습니다. 또한 word 를 매칭하는 경우도 \w 를 사용하면 안되더군요. 위 내용을 비롯한 차이들은 아래 주소에서 확인 할 수 있습니다. https://en.wikipedia.org/wiki/Regular_expression#Character_classes Bash Shell 에서 숫자를 매칭.. 2018. 1. 28.
Autohotkey regular expression 관련 함수에서 변수 사용하기 Autohotkey 에서 정규표현식을 사용할 때 NeedleRegEx , Replacement 부분에 변수를 사용하고 싶은 경우가 있습니다. Python 등에서는 escape() 함수등을 제공해 줘서 이런 함수가 있나 했는데 Autohotkey에 이런 함수는 없더군요. 그래서 검색을 좀 해보니 불가능 한게 아니었습니다. 어쩌면 Python 의 예보다 더 단순한게 할 수 있더군요. 아래와 같은 텍스트가 있는 경우~ Var = ( Line 1 of the text. Line 2 of the text. By default, a linefeed is present between lines. ) Line 1, Line 2 부분을 바꿔 보도록 하죠. 물론 이 경우는 변수를 안 쓰는게 맞지만 그냥... 예니까 변수를.. 2017. 2. 26.
Python Regular Expression 테스트 사이트 Regular Expression 을 사용하는 경우 항상 테스트가 필요 합니다. 정규 표현식을 잘못 사용하면 돌이킬 수 없는 문제들이 발생 할 수도 있기 때문이죠. 그래서 오늘은 정규 표현식 테스트 사이트들에 대해 간단히소개 하려 합니다. 제가 구글링 해 본 바로는 Python 정규표현식 테스트 사이트로 아래 3개의 사이트가 나오더군요. https://regex101.com/ http://pythex.org/ http://www.pyregex.com/ 나머지 두 사이트는 파이썬 정규 표현식을 테스트만 할 수 있었습니다. Cheat Sheet 가 있어서 정규표현식 문법이 생각 안날 때 참조하며 할 수 있다는 측면에서는 좋아 보였습니다. 그런데 첫번째 링크인 https://regex101.com/ 의 경우 .. 2017. 2. 22.
Visual studio 없이 C# 컴파일 하기 어쩌다 보니 C#을 약간 다루어야 할 일이 생겼다. C# 은 아주 오래 전에 그냥 책 한번 보고 간단한 폼 좀 만들어서 가지고 놀아본 경험이 있었지만 그 이후로는 거의 사용하지 않은 언어이다. 그 당시에는 Visual studio Express 을 다운로드 받아서 사용했는데 오늘 회사에서 확인을 해보니 우리 회사에서 Express 버전을 다운로드 받아서 사용하면 안 될 것 같았다. 일단 뭐 하도 오래 전에 약간 본 언어라 어케 했었는지 가물 가물 하고 해서 자료를 좀 찾아보니 역시나 요즘 인터넷 세상에는 모든 자료가 널려 있었다. 아래 주소에 가보니 일단 쉽게 시작 할 수 있었다. http://www.csharpstudy.com/ http://www.hoons.net/Lecture/View/537 Vis.. 2015. 12. 28.
윈도우에서 텍스트 찾기 바꾸기(Find and Replace tool) fnr.exe 코딩시 찾기 바꾸기는 매우 자주 하는 작업 중의 하나인데요 보통 Eclipse 와 같은 IDE(Integrated Development Environment)를 사용하는 경우 Find and Replace 는 너무나 쉬운 작업인데~ 찾기 바꾸기를 위해 Eclipse 와 같은 IDE 를 일일이 실행 시키는것도 참 귀찮은 일이죠~ 리눅스 등에서는 sed 와 같은 툴을 사용하지만~ 반복 작업이 아닌 이상은 GUI 환경에서 작업하는게 편하긴 하죠~ 그래서 찾아보니 아래 주소에 fnr.exe 라는 프로그램이 있더군요. 아쉽게도 Cross-platform 은 아니고~ 윈도우에서만 동작합니다. https://findandreplace.codeplex.com/ 아래 그림과 같이 다운로드를 수행 후 압축을 풀면 fnr... 2015. 5. 27.
Regular Expression 관련 툴 소개 오늘은 정규 표현식(Regular Expression) 관련 툴 소개 좀 하려 합니다. 일단 정규표현식이 뭔지 알아야겠죠~ 정규 표현식에 대한 소개는 아래 주소에서 확인 할 수 있습니다. http://ko.wikipedia.org/wiki/%EC%A0%95%EA%B7%9C_%ED%91%9C%ED%98%84%EC%8B%9D 간단히 얘기하면 문자열의 규칙성을 이용하여 특정한 문자 패턴을 찾거나 바꾸는 표현 방식이 바로 regular expression 입니다. 저는 개인적으로 Regular Expression을 사용한 이후 컴퓨터 사용의 편의성이 극단적으로 증가한 느낌을 많이 받습니다. 그만큼 중요한 기술이고 배워 볼만한 기술이라는 생각이 드네요. 요즘 저는 개인적으로 코드 제너레이터 등을 작성하는데 정규 .. 2015. 5. 18.
Autohotkey 와 Perl 을 사용하여 인덱스 자동 증가 시키기 코딩을 하다 보면 규칙적인 코딩을 해야 하는 경우가 종종 있습니다. 아래 경우와 같이 순차적으로 증가하는 코드를 생각해 보죠~ a0=0;a1=1;a2=2;a3=3;a4=4;... 아래 글에서도 소개를 했지만 vim 을 사용하는 경우 visincr 라는 플러그인을 사용하면 위 코드 예와 같은 경우 쉽게 인덱스를 증가 시킬 수 있습니다. http://iamaman.tistory.com/324 그런데 저는 일반적으로 사용하는 에디터에서도 이런 자동 증가 기능이 있었으면 하는 생각이 들더군요. 그래서 Autohotkey 와 Perl 을 사용하여 인덱스를 자동 증가 시키는 코드를 한번 만들어 봤습니다. 일단 숫자를 인식 해야 할 테니 regular expression 을 지원해야겠고 문자를 숫자로 인식 한 후에 .. 2015. 5. 5.
MATLAB 파일이름 다룰때 유용한 함수들 fileparts, fullfile, filesep 오늘은 MATLAB 을 이용하여 파일 또는 디렉토리 이름을 다룰 때 유용한 몇 가지 함수들에 대해 설명 드리겠습니다. 파일 이름을 다루다 보면 파일 이름부분과 확장자 부분으로 구분하고 싶을 때가 있습니다. 이런 경우에는 fileparts() 라는 함수를 사용 할 수 있습니다. 다음과 같은 형태로 구성되는데요~ [pathstr, name, ext] = fileparts(filename) 보시는 바와 같이 path, 파일 이름, 확장자로 구분해 줍니다. 사용 예는 다음과 같습니다. 위에서는 파일이름을 분리 했으니깐 파일이름을 합치는 방법에 대해 알아보죠. 이름을 합치는 경우에는 fullfile () 이라는 함수를 제공해 줘서 path, 파일 이름, 확장자를 편리하게 합칠 수 있습니다. 위에서 나누었던 파일 .. 2012. 7. 1.
Autohotkey Regular expression을 이용한 음악파일 이름 변경 음악 파일 이름 등을 일괄 변경 하는 경우 이전에 말씀 드린 NexusFile 등과 같은 프로그램의 파일이름 바꾸기 도구 등을 이용하면 대부분 편리하게 변경이 가능합니다. 2011/03/26 - [컴퓨터일반] - NexusFile 을 이용한 파일 이름 일괄 변경 하지만 이런 툴 들도 개발자가 만들어준 틀 안에서만 바꿀수 있기 때문에 내 마음대로 모든걸 바꾸기에는 한계가 있습니다. 이럴때를 위해 약간의 프로그램 지식을 쌓는 것이 좋다고 생각됩니다. 윈도우 운영체제에서라면 Autohotkey 를 공부하시기를 권해 드립니다. 굉장히 쉬우면서도 컴퓨터 사용을 효율적으로 할 수 있게 도와 주는 언어거덩여~~ 물론 영어의 압박도 있고… 나름 노력도 필요하긴 하지만 들어간 노력에 비해 정말 다양한 것들을 할 수 있는.. 2012. 4. 19.