[JS] 중첩된 문자열 제거하는 방법

[JS] 중첩된 문자열 제거하는 방법

한 텍스트 구문에서 중첩되는 문자열을 제거하는 함수입니다. 예를 들어 “사과;;;바나나;;파인애플;배;;;포도;” 라는 문자열이 있을때 중복된 세미콜론을 제거하고 하나의 세미콜론만 가지게 하고 싶습니다. 즉, “사과;바나나;파인애플;배;포도;” 로 변환하고자 합니다. 이 때 흔히 아래와 같이 replace를 이용해 치환합니다. var fruits = “사과;;;바나나;;파인애플;배;;;포도;”; fruits = fruits.replace(/;;/g, “;”); 하지만 결과는 “사과;;바나나;파인애플;배;;포도;” 가 될 것입니다. replace가 한 번 더 실행되어야 원하는 결과를 얻을 수 있습니다. 중첩문자(세미콜론)이 3개 있을땐 2번, 4개 있을땐 3번 replace가 실행되어야 하는데 이 말의 의미는 반목문(loop)를 실행해야 한다는 것입니다. 중첩문자를 제거하기 위한 함수를 아래와 같이 만들어 봤습니다….

Read More Read More

[Ubuntu] 한영키 전환 방법

[Ubuntu] 한영키 전환 방법

* 이 포스트는 Ubuntu 14.04 LTS 버전 기준으로 작성되었습니다.   방법이 간단해서 부연 설명없이 알려드리겠습니다. “시스템 설정 > 키보드 > 바로가기(탭) > 자판 입력” 으로 이동 1. 구성 키를 “오른쪽 Alt” 로 변경 2. 다음 입력 소스로 전환에서 한영키 누름 (Multi_key로 표시됩니다.) 3. 한영키를 눌러서 키전환이 되는지 확인

[Ubuntu] pip를 이용해 pycurl 설치 시 오류 발생하는 경우

[Ubuntu] pip를 이용해 pycurl 설치 시 오류 발생하는 경우

* 이 포스팅은 Ubuntu 14.04 LTS 버전을 기준으로 작성했습니다.   파이썬에서 Curl을 사용할 수 있게 해주는 모듈인 pycurl을 pip를 통해 설치합니다. 하지만 아래와 같은 오류가 발생하는 상황이 있습니다. command python setup.py egg_info failed with error code 1 이 경우에는 libcurl 모듈이 존재하지 않기 때문에 발생하는 에러로 아래와 같이 libcurl 패키지를 설치해주시면 됩니다. $ sudo apt-get install libcurl4-gnutls-dev 우분투와 다른 환경에서도 같은 오류가 발생한다면 libcurl 모듈이 설치 됐는지 확인해보시기 바랍니다. libcurl 패키지는 환경에 따라 이름이 다르니 참고바랍니다.

[Python] pip로 모듈 설치 시 빌드 에러나는 경우 해결 방법

[Python] pip로 모듈 설치 시 빌드 에러나는 경우 해결 방법

* Ubuntu 14.04 LTS 버전 기준입니다. 일반적으로 빌드 에러는 의존하고 있는 모듈 설치가 되어있지 않아 발생합니다. 무식하지만 확실한 한 방으로 해결할 수 있습니다. 아래 명령을 실행해주세요. $ sudo sudo apt-get install build-essential autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-qt4 python-qt4-gl libgle3 python-dev  

[Linux] CentOS(Redhat)와 Ubuntu(Debian)의 useradd 차이점

[Linux] CentOS(Redhat)와 Ubuntu(Debian)의 useradd 차이점

리눅스에서 사용자 계정을 추가할때 useradd 명령을 사용합니다. 하지만 레드햇 계열과 데비안 계열에서 동일한 명령임에도 조금 다른 기능을 수행합니다. 이 때문에 조금 혼란이 있을 수 있어 포스팅 합니다. 레드햇(CentOS) 계열에서의 useradd : 사용자 계정을 추가하고 /home에 계정디렉토리를 생성합니다. 데비안(Debian) 계열에서의 useradd : 사용자 계정을 추가하고 /home에 계정디렉토리를 생성하지 않습니다. 즉, 계정만 생성합니다. 그렇다면 데비안 계열에서 레드햇 계열의 useradd와 동일하게 /home에 디렉토리를 생성하고 싶다면? adduser 명령을 사용하시면 됩니다. 데비안 계열의 adduser는 레드햇 계열의 useradd 와 동일한 기능을 합니다. 또 하나.. 레드햇 계열에서는…

Read More Read More

[Vim] .vimrc 기본 설정

[Vim] .vimrc 기본 설정

사용 중인 별 내용이 없는 Vim 설정입니다. 시간이 점점 설정 내용에 살이 붙겠지만.. 현재 모습은 초라하기 짝이 없습니다 -_- filetype plugin on nmap <F9> :NERDTreeToggle<CR> nmap <F10> :SrcExplToggle<CR> nmap <F11> :Tlist<CR> set number set ts=2 sw=2 sts=2 syntax on set term=xterm-color set ai set nuw=5 set nocp set sc colorscheme desert set encoding=utf-8  

[Vim] Vundle 설치 방법 간단 정리

[Vim] Vundle 설치 방법 간단 정리

Vim 의 플러그인을 rpm 까진 아니더라도 하나로 통합하여 관리할 수 있게 해주는 유용한 도구 입니다. vundle의 설치 방법은 구글링을 잠깐 해도 쉽게 얻을 수 있지만 빠르게 세팅하고 사용하기 위해 최대한 간단히 정리해봅니다.   1. git 설치 (이미 설치 되어있다면 2번부터) # Redhat/CentOS $ sudo yum install git # Debian/Ubuntu $ sudo apt-get install git   2. vundle 소스 git으로 clone 받아오기 # 현재 계정의 .vim/bundle/vundle.vim 경로로 클론 $ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/vundle   3. vimrc 내용 추가 # vim으로 .vimrc…

Read More Read More

[Ubuntu] 화면 해상도가 1024 * 768을 넘지 못하는 경우

[Ubuntu] 화면 해상도가 1024 * 768을 넘지 못하는 경우

아주 간단하지만 치명적인 삽질 요소가 있어 짧게나마 포스팅 합니다. 저도 이 문제 때문에 그래픽 드라이버도 설치했다가 재설치를 반복하며 3시간을 날렸는데 결과는 허탈합니다.   문제 확인 방법 PC와 모니터에 연결된 케이블의 타입을 눈으로 확인합니다.   해결 방법 만약 모니터 케이블이 RGB라면 뽑아버리고 DVI나 HDMI로 교체합니다.   결론 RGB 케이블로 연결하면 무슨 짓을 해도 1024해상도를 초월 할 수 없습니다.

[Ubuntu] grub rescue 진입 시 복구 방법

[Ubuntu] grub rescue 진입 시 복구 방법

* Ubuntu 14.04 LTS 버전을 기준으로 포스팅 했습니다. 그래픽 카드 드라이버 문제로 우분투를 설치와 삭제를 반복.. 결국 부트 로더를 찾지 못하고 grub resque 프롬프트 창이 출력되는 상황이 되었습니다. 복구 모드에서는 부트 로더가 설치가 되어있는 파티션을 찾아주면 해결이 되는데 이런 경우는 부트로더를 가지고 있는 파티션이 없는 상황입니다. 아래와 같이 부트 파티션을 잡을 수 있겠습니다. 1. 우분투 설치 USB 또는 DVD를 삽입 후 재부팅 2. 우분투 설치 화면으로 집입 3. 설치 옵션에서 기존 우분투를 지우고 설치할지 삭제하고 새로 설치할지를 묻는데 맨 아래…

Read More Read More

[Git] SSH 공개키로 비밀번호 없이 Push/Pull 하도록 설정

[Git] SSH 공개키로 비밀번호 없이 Push/Pull 하도록 설정

Git 원격 저장소를 이용할때 Push나 Pull을 할때 매번 패스워드를 묻게 되는데 이 과정을 SSH 공개키를 생성하여 생략할 수 있습니다. GitHub가 아닌 별도 원격 Git 저장소 서버를 운영하고 있다는 가정하에 작성된 포스트이며, 최대한 간단하게 설명하도록 하겠습니다.   1. 공개키/개인키 생성하기 (Git 원격저장소 서버) $ cd ~/.ssh $ ssh-keygen -t rsa 키이름을 정할지와 키 비밀번호를 지정할지를 묻는데 모두 Enter로 지나갑니다. 만약 키이름이 id_rsa가 아닌 다른 이름으로 생성할 경우 git 인증 시점에서 키파일을 읽지 못합니다. 성공적으로 생성되었다면 id_rsa(개인키)와 id_rsa.pub(공개키)가 존재할 것 입니다.  …

Read More Read More