<?php
// " ", \r, \t, \n, \f를 포함하여
// 임의 갯수의 콤마와 스페이스로 구문을 나눕니다.
$keywords = preg_split("/[\s,]+/", "Received: from unknown (HELO 221.217.186.127) (221.217.186.127)");
while (list($a,$b)=each($keywords)) {
if($a==5) {
echo(" $a,$b :<br> ");
$b=str_replace("(","",$b);
$b=str_replace(")","",$b);
$b=$b.":deny";
echo("$b");
}
}
?>
<?php
$string = "April 15, 2003";
$pattern = "/(\w+) (\d+), (\d+)/i";
$replacement = "\${1}1,\$3";
echo preg_replace($pattern, $replacement, $string);
?>
<?php
// URL에서 호스트 이름 얻기
preg_match("/(\w+) (\d+), (\d+)/i","April 15, 2003", $matches);
while (list($a,$b)=each($matches)) {
echo(" $a,$b :<br> ");
}
$host = $matches[2];
// 호스트 이름에서 마지막 두 세그멘트 얻기
preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
echo "도메인 이름은: {$matches[0]}\n";
?>
<?php
// 패턴 구분자 뒤의 "i"는 대소문자를 구별하지 않게 합니다.
if (preg_match("/[\s,]+/", "Received: from unknown (HELO 221.217.186.127) (221.217.186.127)",$matched)) {
echo "발견하였습니다.bbbbbbbb";
} else {
echo "발견하지 못했습니다.";
}
while (list($a,$b)=each($matched)) {
echo(" <br> $a,$b ");
}
?>
<br>==============================================
<?php
/* 패턴에서 \b는 단어를 지시합니다. 단어 "web"만 매치하고,
* "webbing"이나 "cobweb" 등의 부분적인 경우에는 매치하지 않습니다. */
if (preg_match("/\bReceived: from\b/i", "Received: from unknown (HELO 221.217.186.127) (221.217.186.127)")) {
echo "발견하였습니다.";
} else {
echo "발견하지 못했습니다.";
}
if (preg_match("/\bweb\b/i", "PHP is the website scripting language of choice.")) {
echo "발견하였습니다.";
} else {
echo "발견하지 못했습니다.";
}
?>
<?php
// URL에서 호스트 이름 얻기
preg_match("/^(http:\/\/)?([^\/]+)/i","
http://www.php.net/index.html", $matches);
while (list($a,$b)=each($matches)) {
echo(" $a,$b :<br> ");
}
$host = $matches[2];
// 호스트 이름에서 마지막 두 세그멘트 얻기
preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
echo "도메인 이름은: {$matches[0]}\n";
?>