mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Wednesday, September 20, 2006

[Perl/펄 강좌] 배열(Array) 정의에서, qw 란?


qw 는, 공백으로 분리된 문자열 목록을 배열에 넣을 때 사용하는 것입니다. 꼭 필요한 것은 아니고, '귀차니스트'를 위해 존재하는 구문입니다. qw는, quoted by whitespace 즉, 공백(whitespace)문자로 따옴표를 대신한다는 의미입니다.

원래 문자열은 항상 따옴표로 둘러싸야 하는데, qw 는 따옴표 없이 입력할 수 있게 해주어서 편리합니다.

가령,

맹구
배용준
땡칠이
장동건
강수정
송창식
고은아


이런 문자열들을 배열에 정의하려면 원래

my @names = ("맹구", "배용준", "땡칠이", "장동건", "강수정", "송창식", "고은아");

이렇게 해주어야 하지만 따옴표와 쉼표들을 타이핑하기가 귀찮습니다.


qw 를 사용하면 다음과 같이 간단하게 배열 속에 넣을 수 있습니다.


my @names = qw/ 맹구 배용준 땡칠이 장동건 강수정 송창식 고은아 /;

따옴표와 콤마가 없어서 타이핑이 훨씬 쉽습니다.


또는, 슬래쉬(/) 대신에, 소괄호 등을 사용하여

my @names = qw( 맹구 배용준 땡칠이 장동건 강수정 송창식 고은아 );
my @names = qw< 맹구 배용준 땡칠이 장동건 강수정 송창식 고은아 >;

이렇게 해주어도 됩니다. qw 바로 뒤에 붙여서 요소들을 둘러쌀 문자(delimiter)는 사용자가 자유롭게 선택할 수 있습니다.



그런데 띄어쓰기가 된 요소는 이렇게 qw 로 정의할 수 없습니다.
"강수정 아나운서"라는 요소를

my @names = qw/ 강수정 아나운서 /;

이렇게 정의하면 "강수정"과 "아나운서" 2개의 요소가 되어 버립니다.



따라서 이때는 qw 를 쓰지 않고

my @names = ("강수정 아나운서", "맹구", "땡칠이");

이렇게 정식으로 정의해야 합니다.



▶▶ Perl/펄 문제 해결] Possible attempt to separate words with commas




tag: perl
Perl | 펄

1 Comments:
At February 16, 2014 at 11:43 AM, Blogger 대성 said...

잘배우고 갑니다~

 

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top