본문 바로가기

IT 인터넷

(53)
[정규표현식] 수량자 이번시간에는 11page에 있는 Quantifiers에 대해서 알아보자. Quantifiers는 우리말로 '수량자'라는 뜻이며, 이는 어떠한 패턴이 얼만큼 등장하는가에 대한 것이다.수량자는 크게 3가지가 있는데, 하나는 * 하나는 + 하나는 ?이며각각 어떤 의미인지 알아보자. 우선 *는 *앞에 등장하는 어떠한 패턴이 몇번 등장하는가에서, 0~여러개, *앞에 문자가 있을수도 있고 없을수도 있다는 뜻이다. 예시를 통해 알아보자. Sourceaabc abc bc Case 1Regular Expression:a*bFirst match:aabc abc bcAll matches:aabc abc bc 정규표현식은 a*b이다. 이는 *앞에 있는 a가 있을수도 있고, 여러개일 수도 있는 패턴이다. 뒤에는 b가 온다. 따..
[정규표현식] 특정 문자와 범위 이번에는 page10 서브패턴이라는 것에 대해서 알아보자. 서브 패턴일 때는 소괄호()를 사용한다. 예시를 바로 살펴보자. SourceMonday Tuesday Friday Case 2Regular Expression:(on|ues|rida)First match:Monday Tuesday FridayAll matches:Monday Tuesday Friday 정규표현식으로 (on|ues|rida)라고 적혀있다. 이건 무슨뜻일까? 괄호 + 알파벳 + | 기호(\에 shift키를 누르면 나오는 키 - 파이프)가 있다. 이는 문자열중에 on이나 ues나 rida라는 문자를 선택하는 패턴이 되는 것이다.따라서 first-match는 on이고 all matches에선 on 또는 ues또는 rida가 선택된 것이다..
[정규표현식] 특정 문자와 범위 이번에는 정규표현식에서 자신이 원하는 문자의 후보군을 지정하는 방법에 대해서 알아보자.여기서는 대괄호 [](Square brackets]가 사용된다. page7을 보면 SourceHow do you do? 소스는 how do you do?이다. 정규표현식으로 [oyu] 라고 입력하면 소스중에 o나 y나 u중에 하나 해당되는 문자를 찾게된다. Case 1Regular Expression:[oyu]First match:How do you do?All matches:How do you do? 이처럼 first-match는 o를 사용되고, all matches는 모든 o,y,u를 찾게된느 것이다. 한가지 알아둘 것은 대괄호 포함 [oyu]는 문자 하나에 해당되는 것이다. 따라서 Case 2Regular Expr..
[정규표현식] 모든 문자 그룹 지금까지 살펴봤던 정규표현식의 패턴은 Hello 같이 정확하게 원하는 대상 문자 표현하는 것들이었다. 하지만 우리가 원하는 것이 정확하지 않다면? 이제 page5를 살펴보자. .(포인트)는 어떤 문자와도 매치된다. 라는 설명이 달려있다.이게 무슨말일까? SourceRegular expressions are powerful!!! 소스는 다음과 같다. 예제를 살펴보면, Case 1Regular Expression:.First match:Regular expressions are powerful!!!All matches:Regular expressions are powerful!!! 예제를 살펴보면 정규표현식으로 .(포인트)를 입력했다. 그랬더니 처음에는 R이 선택되고,all matches로는 모든 문자가 선..
[정규표현식] 위치와 이스케이핑 이번애는 ^ 와 $ 와 \ 라는, 정규표현식에서 특수한 의미를 가진 기호의 사용에 대해서 알아보자. page3을 살펴보자. 정규표현식을 입력할 때 ^(캐럿), $(달러)는 특별한 의미를 가지고 있다.다음과 같은 소스가 있다고 했을 때, 소스: who is who 정규표현식으로 ^who 라고 입력하면 결과는 First match:who is whoAll matches:who is who 이다. who is whoi라는 소스에는 who가 두번나온다.^(캐럿)은 문자가 시작하는 위치를 맨 앞으로 지정하는 것이다. 그렇다면 정규표현식으로 who$라고 입력해보자. 결과는 First match:who is whoAll matches:who is who 이다. $는 문자가 끝나는 위치를 맨 뒤로 지정하는 것이다. [..
[정규표현식] 패턴 기본 정규표현식에 대해서 알아보자. 정규표현식이란 어떤 문자를 처리하기 위한 일종의 언어이다. 예를들어 특정 글에서 '안녕'이라는 문자를 찾고 싶다면, 그리고 그 문자를 '잘가'라고 바꾸고 싶다면 자신이 처리하고자 하는 문자를 정규표현식의 문법에 맞게 찾을 수 있어야 한다. 정규표현식에 관한 사이트는http://zvon.org/comp/r/tut-Regexp.html#Pages~Contents이며, 난이도가 낮은 것부터 높은 것까지 하나하나 배워나갈 수 있는 사이트이다. 이 사이트의 page1부터 살펴보자.정규표현식의 가장 기본적인 문법이라고 할 수 있는 것은내가 찾고자 하는 text가 있다면, 그 text를 그대로 적어주는 것이다. 'Hello, world!' 라는 소스가 있다고 하자.여기서 정규표현식으로 ..
[javascript 언어공부]문서보기 앞서 UI와 API에 대해서 알아봤다. 프로그래머는 결국 환경을 제어하기 위해서는 API를 통해 그 소프트웨어를 제어하는 것이다. 이렇기 떄문에 우리가 제어하고자 하는 환경에는 어떤 API가 있고, 그 각각 API는 어떤 특성이 있고 어떻게사용하는가에 대한 지식이 필요하다. 하지만 이 지식을 머릿속에 항상 가지고 있을 수 없기 때문에이것을 잘 찾을 수 있는 것이 중요하다. 보통 2가지를 제공하는데, 첫번째는 레퍼런스고 두번째는 튜토리얼(안내서) 이다. 먼저 튜토리얼을 통해서 환경이 어떤 기능을 제공하는가를 알 수 있고, 환경에 대해 충분히 이해하게 되면이 지식을 기반으로 그 환경이 제공하는 명령들을 찾아야 하는데,레퍼런스라는 카테고리에 있는 정보들이 그 역할을 한다. 우리가 보고 있는 수업(생활코딩수업 ..
[javascript 언어공부]UI와 API 이번시간에는 UI/API에 대해서 알아보자. UI는 USER INTERFACE의 약자이며 API는 APPLICATION PROGRAMMING INTERFACE의 약자이다. UI와 API의 공통점은 INTERFACE이며 차이점은 USER / APPLICATION PROGRAMMING 이다. 우선 UI에 대해서 알아보자.컴퓨터가 한대 있다고 생각해보자.우리가 컴퓨터를 제어하기 위한 방법은, 1. 버튼을 누르거나2. 터치패드를 움직이거나3. 노트북 뚜껑 열었다 닫았다하는 것을 통해서 노트북이라는 컴퓨터를 제어할 수 있게 된다.동시에 컴퓨터의 상태 - 컴퓨터를 통해서 계산된 것 들은 DISPLAY에서 보여지거나스피커를 통해 시스템의 상태를 알려준다. 컴퓨터 시스템과 / 컴퓨터 사용하는 사람 사이의 접점에 위치하..
[javascript 언어공부] 모듈(2) 이번에는 라이브러리의 개념에 대해서 설명하면서 모듈의 개념을 마무리 해보겠다. 라이브러리와 모듈은 비슷한 개념인데 모듈은 프로그램을 구성하는 작은 부품이라는 의미라면라이브러리는 자주 사용되는 로직을 재사용되기 편하도록 잘 정리한 일련의 코드들의 집합이다. 프로그래밍에서는 아주 많은 라이브러리가 존재한다.또 프로그래머의 아주 독특한 문화인 오픈소스가 있다. 직접 코드를 짜는 것도 좋은 방법이지만, 이것이 만들고자 하는 것의 경쟁력의 원천이 아닌이상누가 이미 만들어놓은 것이 있는지 찾아보는 것이 순서이다. 라이브러리라는것은 그것을 만들기 위한 목적을 가진 사람들이 모여 만들며, 많은시간-자본-노하우가 투여돼어있기 때문에단지 사용하기위한 도구를 필요로 하는 것이면 이것보다 더 좋은 라이브러리를 만들기는 어렵고..
[javascript 언어공부] 모듈(1) 이번에는 모듈 이라는 주제에 대해서 알아보자. 모듈이라는 것에 대해 알아보기 전에, 우리는 부품이라는 단어의 의미에 대해 생각보아야 한다. 프로그램은 작고 단순한 것에서 크고 복잡한 것으로 진화한다.그리고 크고 복잡한 프로그램에서는 유지보수의 용이성, 재활용 성이 꼭 필요하다. 어떤 프로그램을 구성하고 있는 수 많은 로직들을재사용 될 수 있는 단위로 조각조각 나누고 구획화 시켜서별도에 모듈이라는 형태로 떼어내고 이것을 또 다른 프로그램에 부품으로 사용하는 기법그리고 그 부품들을 모듈이라 하고, 이러한 기법을 모듈화 라고 한다. 즉, 잘 만들어진 모듈은 아주많은 프로젝트에서 사용될 수 있는 아주 좋은 부품이 되는 것이다. 다시 말하면 모듈화는 어떤 프로그램이 동작하는 방식에 따라서 여러개의 파일로 분리하는..
[javascript 언어공부] 객체(3) 이번에는 객체라는 값에 담길 수 있는 값이 무엇인가에 대해 살펴보자. 객체를 먼저 만들어보자. 객체 안의 list 라는 key 값을 만든다. 그리고 그 안에 들어가는 value는 다시 객체가 될 수 있다. var grades = {'list' : {'estelar':'10','yesri':'6','hongjoo':'80'}} 그리고 grade라는 객체에 list라는 객체에 estelar라는 키 값을 가진 값을 가져오려면grades['list']['estelar']다음과 같이 호출할 수 있다. 또 value값 안에는 함수도 들어갈 수 있다.var grades = {'list' : {'estelar':'10','yesri':'6','hongjoo':'80'}'show': function (){alert('h..
[javascript 언어공부] 객체(2) 다음으로 객체를 다루는 방법에 대해서 알아보자. 특히 반복문을 이용해서 객체를 다루는 방법을 알아보자. 배열에서var arr = ['a','b','c'] 라는 배열을 다룰 때 반복문을 통해 for (var i=0;i
[javascript 언어공부] 객체(1) 이번시간에는 객체라는 주제에 대해서 알아보자.객체는 영어로 object라고 하고, object 라는 객체가 자바스크립트에서 하는 역할은,배열이라고 하는 것과 유사한 역할을 한다.배열은 연관돼있는 데이터들을 담기 위한 그릇이며,객체도 서로 연관돼있는 데이터들을 담기 위한 그릇이라는 점에서는배열과 객체가 매우 유사하다. 배열과 객체의 차이점은,배열은 그릇이 있고, 그 그릇에 값을 추가하면 그에 따른 index가 추가되고, a b c 0 1 2 객체는 index의 값으로 문자나, 원하는 데이터를 지정할 수 있다는 것이 배열과 객체의 가시적인 차이점이다. a b c 'first' 'second' 'third' 다른 언어에서는 연관배열, 맵, 딕셔너리 라는 데이터 타입이 객체에 해당된다. 객체라는 것은, 나중에 ..
[javascript 언어공부] 배열(3) 이번에는 배열을 제어하는 방법에 대해서 알아보자. 우리는 배열에 담겨있는 데이터를 추가,삭제하거나 어딘가에 낑겨 넣거나 하는 작업을 할 필요가 있다. 먼저 추가에 대해서 알아보자. var li = ['a', 'b', 'c', 'd', 'e']; 다음과 같은 배열이 있다. 이 배열에 .push('f'); 라는 명령을 해보면li.push('f'); 배열을 호출했을 때 alert(li); var li = ['a', 'b', 'c', 'd', 'e','f'];기존에 볼 수 없었던 'f'라는 원소가 배열 뒤에 추가되었음을 알 수 있다. push라는 함수가 있다. 이 함수는 자바스크립트가 기본적으로 제공하는 내장함수이다.이 함수를 호출할 때 첫번째 인자로 'f'라는 값을 전달했더니, f라는 값을 push라는 함수가..
[javascript 언어공부] 배열(2) 이번에는 배열을 사용하는 좀 더 구체적인 방법에 대해서 살펴보자. 배열에 대해 어떤 값을 가져올 때, index값을 기억하고 있는 것은 불가능하다.따라서 배열이라는 것은, 배열에 담겨 있는 값들을 하나하나 꺼내서, 꺼내진 값들을 가공하는 것이 배열을 사용하는 것의 핵심이다. '하나하나 꺼내온다'는 것은 앞서 배운 것 중 '반복문'과 연관된다. 배열은 반복문과 함께 사용했을 때 비로소 그 가치가 발휘된다. 하단의 코드를 보자. function get_members(){ return ['estelar', 'yesri', 'hongjoo'];} var members = get_members(); get_members()라는 함수를 정의하고, 그 함수를 호출한 결과를 members 라는 변수에 담는다. 과연 이..
[javascript 언어공부] 배열(1) 이번시간에는 배열에 대해서 배워보자. 배열(array)은 연관돼있는 데이터들을 모아서 통으로 관리하기 위해 사용하는 데이터 타입(형식)이다.다시말해서 배열은 데이터를 담는 그릇이다. 이전에 배운 데이터를 담는 그릇은 변수이며, a라는 변수에는 1이라는 값이 들어갈 수도, 2라는 값이 들어갈 수도 있으나변수 안에 들어가는 것은 하나의 값이었다. 배열은 데이터를 담는 여러개의 붙어있는 그릇이며, 하나의 데이터에 여러개의 데이터를 저장할 수 있고 꺼내올수도 있다. 먼저 배열을 만들어보자.배열은 대괄호로 시작해 대괄호로 끝나야 하며, 그 안에 서로 연관돼있는 데이터를 넣는다. 만약 회사에 3명에 직원이 있고, 그 구성원들을 이름을 배열에 담는다고 생각해보자. var member = ['estelar','yesr..