Regular Expression - 자주 쓰이는 표현

자주 쓰이는 표현



l  E-mail 주소

/^[a-z0-9_+.-]+@([a-z0-9-]+.)+[a-z0-9]{2,4}$/i


 

l  URL

/^(?:(http[s]?|ftp[s]):\/\/)?([^:\/\s]+)(:[0-9]+)?((?:\/\w+)*\/)([\w\-\.]+[^#?\s]+)([^#\s]*)?(#[\w\-]+)?$/



 

l  전화번호

/^\d{2,3}-\d{3,4}-\d{4}$/



 

l  휴대전화번호

/^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/



 

l  Hex color code

/^#[A-Fa-f0-9]{6}$/



 

l  확장자(그림)

/^.+\.(jpg|png|gif|bmp)$/



 

l  특수문자 포함 체크

/[^\w\s]/i



 

l  비밀번호 (대문자1 이상, 특수문자 포함, 8글자 이상)

/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,}$/


Regular Expression (정규 표현식) - 메타문자

Regular Expression


메타문자

설명

예시

*

앞의 문자를 0 이상 찾는다.

zo* -> z, zo, zoo, zooooo

+

앞의 문자를 1 이상 찾는다.

zo+ -> zo, zoo zooo, zoo

?

앞의 문자를 0개나 1 찾는다.

zo? -> z, zo

^

검색되는 문자열의 시작 부분에서 위치를 찾는다.

중괄호 안에 있는 ^ 부정을 뜻한다.

^We -> We********

[^abc] -> a,b,c 제외한것들

$

검색되는 문자열의 끝부분에서 찾는다.

$e -> 문장 끝에 e 있으면 참이다.

.

\n 제외한 모든 단일 문자를 검색

a.c -> abc, a1c, a-c, a?c

[  ]

대괄호 식의 시작과 끝을 표시한다.

[1-4] -> 1, 2, 3, 4

{  }

수량자 식의 시작 부분을 표시

a{2,3} -> aa, aaa

|

이상의 항목에서 선택한다.

(z|f)ood -> zood, food

/

리터럴 정규식 패턴의 시작과

/g -> 전역 /i -> 대소문자 무시

\

다음에 오는 문자를 특수 문자, 리터럴, 이스케이프로 표시한다.

\n -> 개행문자, \( -> (

\\ -> \

\b

단어와 공백 사이의 위치를 검색

er\b -> er뒤에 문자가 없는 모든

\B

공백이 아닌것의 위치를 탐색

er\b -> er뒤에 공백이 아닌 모든

\d

숫자를 찾는다 [0-9]

\d{2} -> 12, 34, 56, 13

\D

문자를 찾는다 [^0-9]

\D{2} -> ab, cd, ef, af

\w

A-Z, a-z, 0-9, _ 찾는다. [A-Za-z0-9_]

\w -> yun, se, yeong

\W

\w 제외한 모든 [^A-Za-z0-9_]

\W -> ‘ ‘, !@#$%^&*()

[xyz]

xyz 하나를 찾는다.

[xyz] -> x, y, z

[^xyz]

xyz 아닌 모든 것을 찾는다.

[xyz] -> a, b, c, d, e, 1, 2, 3

-a[z]

지정한 범위에서 문자를 찾는다.

[a-z] -> 모든 소문자

[^a-z]

지정한 범위가 아닌 모든 것을 찾는다.

[^a-z] -> 소문자가 아닌 모든

{n}

n개를 찾는다.

o{2} -> oo

{n,}

n 이상을 찾는다.

o{2,} -> oo, ooo, oooo

{n, m}

n 이상 m 이하를 찾는다.

o{2,3} -> oo, ooo

(Pattern)

Pattern 찾고 일치하는 항목을 저장

(cha\sec)[1-9] ->

cha1 ~ cha9

(?:pattern)

Pattern 찾지만 저장하진 않는다.

Industr(?:y|ies) ->

Industry| Industries

(?=pattern)

일치 항목을 찾은 일치한 텍스트의 앞에서 다음 일치 항목에 대해 검색한다.

^(?=.*\d).{4,8}$ -> 4-8개의 문자로 구성되고 적어도 하나의 숫자를 포함하도록 한다.

(?!pattern)

일치하지 않은 항목을 찾은 다음 일치 항목에 대한 검색을 시작한다.

\b(?!th)\w+\b ->

th 시작하지 않는 단어를 탐색


 

'SW > Regular Expression' 카테고리의 다른 글

정규 표현식 연습할 사이트!  (0) 2017.09.13
Regular Expression - 자주 쓰이는 표현  (0) 2017.09.05

JOIN

JOIN



기본형식

SELECT ‘열 목록’ FROM ‘테이블1’ ~join ‘테이블2’ ON (join 조건)


의미

각 테이블 간 의미 있는 데이터를 연결하는데 사용하는 메커니즘이며 적어도 하나의 컬럼이 테이블 사이에서 공유되어야 한다.


필요한 이유

RDB를 정규화 하면 데이터 집합으로 테이블이 구성되고, 각 테이블끼리는 관계를 갖는다.


이러한 특징으로 RDB는 저장공간의 효율성과 확장성이 향상된다.


한편, 서로 관계 있는 데이터가 여러 테이블로 나뉘어 저장되므로, 각 테이블에 있는 데이터를 효율적으로 검색하기 위해 조인이 필요하다.


표현 방식

명시적 표현법과 묵시적 표현법이 있으며

명시적 표현법은 ‘SELECT column FROM A_table JOIN B_table ON (A_column = B_column)’이고

묵시적 표현법은 ‘SELECT column FROM A_table, B_table WHERE (A_column = B_column)’와 같이 사용한다.


INNER JOIN OUTER JOIN이 있는데, 이 둘의 차이점은 INNER JOIN은 조인조건에 만족하지 않는 데이터를 출력한다면 OUTER JOIN, 그렇지 않다면 INNER JOIN이 된다.


1.     INNER JOIN : 가장 일반적인 조인 형태로 빈번하게 사용한다. 둘 이상의 테이블에 존재하는 공통 컬럼의 값이 같은 것을 결과로 추출한다. 내부 조인에는 동등 조인’, ‘자연 조인’, ‘교차 조인등이 있다.


A.     동등 조인 : ‘Equi join’이라고도 하며, 조인의 가장 일반적인 형식이다. 둘 이상의 테이블에 존재하는 공통 컬럼의 동등만을 비교하며, 부등호 조인은 동등 조인에 포함 되지 않는다.


B.      자연 조인 : ‘natural join’이라고도 하며, 조인 대상 테이블의 모든 컬럼을 비교하여 같은 컬럼명을 가진 컬럼으로 조인을 수행한다. 이때, 동일한 이름은 갖는 컬럼은 한 번만 추출한다.


C.      교차 조인 : ‘cross join’이라고도 하며, 조인에 들어간 테이블들의 모든 데이터가 추출된다. 조인 조건이 잘못되었거나 정의하지 않았을 때, 테이블의 모든 행이 조인되는 경우에 발생한다. Cartesian Product 값을 얻을 수 있다. 너무 많은 레코드를 생성할 위험이 있기 때문에 드물게 사용하며, 테스트 용도로 대용량의 테이블을 생성시에 사용한다.


D.     셀프 조인 : 자가 조인이라고도 하며, 하나의 컬럼에 있는 값들과 이 컬럼에 들어있는 다른 값을 비교할 때 사용한다. FROM절에 각각 다른 alias를 지정하여 테이블을 대입한다. 테이블의 한 컬럼이 자신의 다른 레코드를 참조할 때 사용한다.


2.     OUTER JOIN : 특정 테이블의 데이터가 모두 필요할 때 사용한다.


A.     LEFT OUTER JOIN : 오른쪽 테이블에 조인할 컬럼의 값이 없는 경우 사용한다. 왼쪽 테이블의 모든 데이터를 포함하는 결과를 만든다.


B.      RIGHT OUTER JOIN : 왼쪽 테이블에 조인할 컬럼의 값이 없는 경우 사용한다. 오른쪽 테이블의 모든 데이터를 포함하는 결과를 만든다.


C.      FULL OUTER JOIN : LEFT OUTER JOINRIGHT OUTER JOIN을 합친 것으로 양쪽 모두 조건이 일치하지 않는 것들까지 모두 결합하여 출력한다.





리눅스 명령어 - PROCESS

   Process



A.    ps : 현재 진행중인 프로세스를 출력한다.


B.     Pstree : 프로세스의 상관관계를 출력한다.


C.    top : 프로세스의 목록을 일정시간(사용자가 지정 가능)마다 갱신하여 출력한다.


D.    Kill (시그널 프로세스) : 입력한 프로세스에 입력한 시그널을 보낸다.


E.     (명령어) & : 해당 명령어를 background에서 실행한다.


F.     jobs : background에서 실행중인 작업을 확인한다.

'SW > LINUX' 카테고리의 다른 글

버전관리, SVN  (0) 2017.09.05
GCC compiler (내부 매크로, Makefile)  (0) 2017.09.05
리눅스 명령어 - INFO  (0) 2017.09.05
리눅스 명령어 - USER  (0) 2017.09.05
리눅스 명령어 - FILE&DIRECTORY  (0) 2017.09.05

리눅스 명령어 - INFO

Info



A.    which (명령어) : 해당 명령어의 위치를 절대경로로 알려준다.


B.     whereis (명령어) : 명령어의 정보가 담긴 파일들의 절대경로를 출력.


C.    grep (패턴 파일명) : 패턴에 맞는 문자열을 찾아서 출력한다.


D.    more : 화면단위로 출력한다.

'SW > LINUX' 카테고리의 다른 글

GCC compiler (내부 매크로, Makefile)  (0) 2017.09.05
리눅스 명령어 - PROCESS  (0) 2017.09.05
리눅스 명령어 - USER  (0) 2017.09.05
리눅스 명령어 - FILE&DIRECTORY  (0) 2017.09.05
리눅스 명령어 기초  (0) 2017.09.05

리눅스 명령어 - USER

USER



A.    users : 현재 시스템에 로긴 사용자 계정 조회


B.     id : 계정정보 출력


C.    finger (사용자이름) : 사용자의 정보를 구함


D.    passwd (사용자이름) : 사용자의 암호를 지정하고 변경함


E.     useradd (사용자이름) : 사용자를 추가한다. (adduser 같다)


F.     userdel (사용자이름) : 사용자의 계정을 삭제한다.

'SW > LINUX' 카테고리의 다른 글

GCC compiler (내부 매크로, Makefile)  (0) 2017.09.05
리눅스 명령어 - PROCESS  (0) 2017.09.05
리눅스 명령어 - INFO  (0) 2017.09.05
리눅스 명령어 - FILE&DIRECTORY  (0) 2017.09.05
리눅스 명령어 기초  (0) 2017.09.05

리눅스 명령어 - FILE&DIRECTORY

Directory & File



A.    ls : 현재 디렉토리에 있는 파일 목록들을 출력

                        i.         -l : 자세히 보기


B.     pwd : 현재 위치한 디렉토리의 경로를 알려줌


C.    du (파일명) : 파일의 크기를 구한다.


D.    df : 디스크 공간과 사용량을 구한다.


E.     tree : 디렉토리의 파일 구조를 출력


F.     touch (파일명) : 새로운 파일을 생성한다. 기존에 있던 파일이라면 갱신시간을 수정


G.   head (파일명) : 텍스트문서의 앞부분을 보여준다

                        i.         -n : 보여줄 라인수를 지정


H.    tail (파일명) : 텍스트문서의 끝부분을 보여준다

                        i.         -n : 보여줄 라인수를 지정


I.       mkdir (디렉토리 ) : 디렉토리를 생성함 (성공시 0, 실패시 -1 리턴)


J.     rmdir (디렉토리 ) : 디렉토리를 지움 (성공시 0 실패시 -1 리턴)


K.     opendir (디렉토리 ) : 디렉토리를 연다 (성공시 해당 디렉토리의 포인터, 실패시 null 리턴)


L.     readdir (디렉토리 포인터) : 포인터가 가리키는 디렉토리 스트림의 항목을 읽음 (성공시 디렉토리의 정보를 담은 struct dirent, 실패시 null 리턴)


M.   close (디렉토리 포인터) : 디렉토리 스트림을 닫음


N.    cd (이동할 디렉토리 경로명) : 입력한 디렉토리로 이동 (chdir명령어와 같다)


O.   rm (파일명) : 입력한 파일을 삭제함

                        i.         -r : 디렉토리를 삭제할 사용

                       ii.         -f : 강제삭제


P.     cp (복사할 파일 대상파일) 파일을 복사한다.


Q.   file (파일명) : 특정 파일의 종류를 알려줌


R.     gzip/gunzip (파일명) : 파일의 압축과 해제


S.     tar : 두개 이상의 파일을 하나의 파일로 결합

                        i.         -x : 묶음을 해제

                       ii.         -c : 파일을 묶음

                      iii.         -v : 묶음/해제 과정을 화면에 표시

                      iv.         -z : gunzip 사용

                       v.         -f : 파일 이름을 지정


T.      chmod (권한 파일명) : 입력한 파일의 접근권한을 변경한다.


U.    chown (사용자이름 파일명) : 파일의 소유권을 변경함


V.    umask : 새로 만들어지는 파일의 default 권한을 지정한다.

'SW > LINUX' 카테고리의 다른 글

GCC compiler (내부 매크로, Makefile)  (0) 2017.09.05
리눅스 명령어 - PROCESS  (0) 2017.09.05
리눅스 명령어 - INFO  (0) 2017.09.05
리눅스 명령어 - USER  (0) 2017.09.05
리눅스 명령어 기초  (0) 2017.09.05

리눅스 명령어 기초

리눅스 기본 명령어


[명령어] –help : 입력한 명령어의 설명이 나온다. 자세히 알고 싶으면 man [명령어], 간단하게 알고 싶으면 whatis [명령어] 사용한다.

'SW > LINUX' 카테고리의 다른 글

GCC compiler (내부 매크로, Makefile)  (0) 2017.09.05
리눅스 명령어 - PROCESS  (0) 2017.09.05
리눅스 명령어 - INFO  (0) 2017.09.05
리눅스 명령어 - USER  (0) 2017.09.05
리눅스 명령어 - FILE&DIRECTORY  (0) 2017.09.05

DHCP(Dynamic Host Configuration Protocol)

DHCP(Dynamic Host Configuration Protocol)



IP address 비롯한 각종 TCP/IP protocol 기본 설정을 개별 client들에게 자동적으로 할당하는 protocol이다.


기본적으로 TCP/IP 설정을 자동으로 관리하며, 개별 시스템에 대해서 IP address 관련된 설정 정보를 준다.


구성으로는 DHCP Client Server 되어있다.

'SW > 데이터통신' 카테고리의 다른 글

data flow (데이터 흐름방향)  (0) 2017.09.05
데이터 통신 구성요소 (용어정리)  (0) 2017.09.05
TCP/UDP  (0) 2017.09.05
IP (Internet Protocol)  (0) 2017.09.05
SOAP (Simple Object Access Protocol)  (0) 2017.09.05

TCP/UDP

TCP(Transmission Control Protocol)



Connection Oriented 전송으로 에러 정정과 흐름제어의 기능을 가지고 있어, 유실된 packet 있을 경우 원래 host 재전송을 요청한다.


안정성과 신뢰성이 뛰어나기 때문에, 사용자 데이터 전송, 대용량 전송에 사용된다.





 

UDP(User Datagram Protocol)



 Connectionless 전송으로 에러 정정을 하지 않는다.


그렇기 때문에 시스템 내부 data 전달, 소규모 data 전송에 사용된다.

'분류 전체보기'에 해당되는 글 125건

1 ··· 8 9 10 11 12 13 →