PHP Tutorial, 문자열 연산과 정규 표현식 |
=======
문자열 다듬기
trim(), ltrim(), rtrim() ( rtrim 은 chop 과 같다. )
=======
문자열 정돈
nl2br()
\n 을 < /br> 또는 <br> 로 변환시킨다.
=======
대소문자 바꾸기
strtoupper()
strtolower()
ucfirst()
문장의 처음이 알파벳이면 그것만 대문자
ucwords()
각 단어의 첫 알파벳을 대문자로
=======
데이터베이스 저장 위한 문자열 다듬기
addslashes()
stripslashes()
php 설정에 따라서 자동으로 \ 를 추가해주는 경우도 있긴 하다.
설정의 magic_quotes_gpc 에 의해 제어된다.
여기서 gpc 는 GET, POST, Cookie 의 앞글자.
get_magic_quotes_gps() 함수를 사용하여 시스템이 이 기능을 활성화시켰는지 알 수 있다.
만약 이 기능이 활성화되어 있으면 사용자 데이터 출력하기 전 stripslashes() 를 호출해주어야 한다.
=======
문자열 합치고 나누기
array exlode( string separator, string input [, int limit] );
string implode( string implodechar, array array ) ( join() 도 마찬가지 )
string strtok( string input, string seperator );
strtok() 은 exlode 와 달리 한번에 하나씩 문자열을 조각낸다.
$token = strtok( $feedback, ' ' );
echo $token.'<br />';
while( $token != '')
{
$token = strtok( ' ' );
echo $token.'<br />';
};
string substr( string string, int start[, int length] );
=======
문자열 비교하기
strcmp()
strcasecmp()
strnatcmp()
"2" "12" 를 비교하는 경우 sttcmp() 는 "2" 가 크다고 판별하지만 strnatcmp() 는 "12" 가 크다고 한다.
nat 은 natural order 의 약자.
=======
문자열 길이 알기
strlen()
=======
문자열을 일치시키고 맞바꾸기
string strstr( string haystack, string needle );
hay stack 안에서 needle 이 있는지 찾아보는 것이다. 기준은 첫 매치.
strchr()
chr 을 찾는데, 마지막 매치를 기준으로 한다.
=======
문자열 위치 찾기
int strpos( string haystack, string needle [,int offset] );
strrpos()
뒤에서부터 검색한다.
=======
문자열 대체하기
mixed str_replace( mixed needle, mixed new_needle, mixed haystack[, int &count] );
count 는 몇 번 바꿨는지를 기록한다.
needle 에는 배열을 넣어서 여러가지를 한가지 형태로 변형시킬수도 이다.
string substr_replace( string string, string replacement, int start [, int length] );
=======
정규 표현식의 소개
문자집합과 클래스.
. 은 \n 을 제외한 모든 문자 대신.
[a-z] 은 a~z 까지의 한글자를 대신.
[a-zA-Z] 는 대소문자 a~z 까지의 한글자를 대신.
[^a-z] a~z 까지가 아닌 한글자를 대신.
[[:alnum:]] 알파벳 문자, 숫자
[[:alpha:]] 알파벳 문자
[[:lower:]] 소문자
[[:upper:]] 대문자
[[:digit:]] 십진법의 숫자
[[:xdigit:]] 16진법의 숫자, 문자
[[:punct:]] 구두점
[[:blank:]] 탭, 스페이스
[[:space:]] 공백문자들
[[:cntrl:]] 컨트롤 문자들
[[:print:]] 모든 출력 가능한 문자들
[[:graph:]] 스페이스를 제외한 모든 출력 가능한 문자들
*는 0번 이상 반복
+는 1번 이상 반복
(문자열)*문자열2 : 문자열 뒤에 문자열2가 바로 나타남. () 는 옵션, 즉 있을수도 없을수도.
(문자열){횟수} : 횟수만큼 반복. , 로 구분할 경우 예를 들어 {1,3} 의 경우 최소 1번 최대 3번 반복.
{2, } 최소 2번 이상 반복.
^ 는 정규식의 시작부분
$ 는 정규식의 마지막 부분
| 를 통해 선택을 할 수 있다.
int ereg( string pattern, string search [, array matches] );
eregi()
대소문자 구별 x
=======
정규식으로 문자열 교체하기
string ereg_replace( string pattern, string replacement, string search );
search 는 target str.
=======
정규식으로 문자열 분리하기
array split( string pattern, string search [, int max] );
=======
정규식 함수는 문자열 함수에 비해 보통 비효율적이다
따라서 작성해야 할 프로그램이 간단하면 가능한 문자열 함수를 사용해야 좋다.
'프로그래밍 놀이터 > Web' 카테고리의 다른 글
[PHP] 배열( array ) tutorial (2) | 2013.11.21 |
---|---|
[PHP] Tutorial, 객체 지향 (0) | 2013.11.15 |
Mini Device Lab - 여러가지 스마트 단말에서의 반응형 웹을 쉽게 확인하자 (0) | 2013.11.11 |
chrome 에서 request, response header 보기. (0) | 2013.11.07 |
[jQuery] Slider 컨트롤. ( control ) (0) | 2013.11.05 |
댓글