'/^[0-9]+$/i'
 │     │  ││
 │     │  │└─ 플래그(Flag 또는 Modifier): 대소문자 무시 등 옵션 (선택)
 │     │  └──── 구분자(Delimiter): 패턴의 시작과 끝을 알림 (필수)
 │     └────────── 패턴(Pattern): 찾고자 하는 규칙 (필수)
 └──────────────── 구분자(Delimiter): 패턴의 시작과 끝을 알림 (필수)
하나의 문자열입니다.
하나의 문자열입니다.
구분자(Delimiter) 가장 흔한 형태: 슬래시(/)를 주로 씁니다.
구분자(Delimiter) 다른 기호 사용 가능: 알파벳, 숫자, 백슬래시(\)를 제외한 임의의 특수문자를 쓸 수 있습니다.
패턴(Pattern)
플래그(Flag 또는 Modifier)
'/hello/'
'hello' // 전체 문자열이 hello와 일치
'hello word' // 문자열 앞부분에 포함
'say hello to me' // 문자열 중간에 포함
'Hello' // 대문자 H이므로 실패
'hell' // 글자가 완성되지 않음
'he llo' // 중간에 공백이 있음
패턴(Pattern)에서 메타 문자로 규칙 표현
'5' // 일치
'0' // 일치
'12345' // 불일치([0-9]는 숫자 하나만 허용)
'12a' // 불일치
'a12' // 불일치
플래그(Flag 또는 Modifier)
'hello' // 일치
'Hello' // 일치
'HELLO' // 일치
$text = 'Hello PHP';

if (preg_match('/PHP/', $text)) {
    echo "찾았습니다.";
}
// 출력: 찾았습니다.
$text = 'apple banana apple';

preg_match_all('/apple/', $text, $matches);

print_r($matches[0]);
/* 출력:
    Array
    (
        [0] => apple
        [1] => apple
    )
*/
$input = '안녕하세요, PHP!';
$pattern = '/안녕하세요/';  // '안녕하세요'를 찾는 정규 표현식
$replacement = '안녕';    // '안녕하세요'를 '안녕'으로 교체

$output = preg_replace($pattern, $replacement, $input);

echo "Original input: $input";  // 출력: "Original input: 안녕하세요, PHP!"
echo "Output: $output";          // 출력: "Output: 안녕, PHP!"
/* URL에서 프로토콜 종류를 분리하는 간단한 예시 */
$url = "https://www.example.com/path/to/resource";
$parts_url = preg_split('#://#', $url);
print_r($parts_url);
/* 출력:
	Array (
		[0] => https
		[1] => www.example.com/path/to/resource
	)
*/

echo '프로토콜의 종류: ' . $parts_url[0]; // 출력: '프로토콜의 종류: https'