説明
int
preg_match ( string pattern, string subject [, array matches])
patternã§æŒ‡å®šã—ãŸæ£è¦è¡¨ç¾ã«ã‚ˆã‚Š
subjectを検索ã—ã¾ã™ã€‚
matchesãŒæŒ‡å®šã•れãŸå ´åˆã€æ¤œç´¢çµæžœãŒä»£å…¥ã•れã¾ã™ã€‚
$matches[0]ã¯ãƒ‘ターン全体ã«ãƒžãƒƒãƒã—ãŸãƒ†ã‚ストãŒä»£å…¥ã•れã€
$matches[1]ã¯æœ€åˆã®æ‹¬å¼§ä»˜ãã®ã‚µãƒ–パターンã«ãƒžãƒƒãƒã—ãŸãƒ†ã‚スト
ãŒä»£å…¥ã•れã€ã¨ã„ã£ãŸã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚
preg_match()ã¯ã€pattern
ãŒãƒžãƒƒãƒã—ãŸå›žæ•°ã‚’è¿”ã—ã¾ã™ã€‚ã“れã¯ã€0回(マッãƒã›ãš)ã¾ãŸã¯1回ã¨ãªã‚Š
ã¾ã™ã€‚ã“れã¯ã€æœ€åˆã«ãƒžãƒƒãƒã—ãŸæ™‚点ã§preg_match()
ã¯æ¤œç´¢ã‚’æ¢ã‚ã‚‹ãŸã‚ã§ã™ã€‚逆ã«preg_match_all()ã¯ã€
subjectã®çµ‚ã‚りã¾ã§æ¤œç´¢ã‚’ç¶šã‘ã¾ã™ã€‚
preg_match()ã¯ã€ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ãŸå ´åˆã«FALSEã‚’
è¿”ã—ã¾ã™ã€‚
例 1æ–‡å—列"php"を探㙠// パラメータã®ãƒ‡ãƒªãƒŸã‚¿ã®å¾Œã®"i"ã¯å¤§æ–‡å—å°æ–‡å—を区別ã—ãªã„検索を示ã—ã¾ã™
if (preg_match ("/php/i", "PHP is the web scripting language of choice.")) {
print "A match was found.";
} else {
print "A match was not found.";
} |
|
例 2å˜èªž"web"を探㙠// パターン内ã®\bã¯å˜èªžã®å¢ƒç•Œã‚’示ã—ã¾ã™ã€‚ã“ã®ãŸã‚ã€ç‹¬ç«‹ã—ãŸå˜èªžã®
// "web"ã«ã®ã¿ãƒžãƒƒãƒã—ã€"webbing" ã¾ãŸã¯ "cobweb"ã®ã‚ˆã†ãªå˜èªžã®ä¸€
// 部ã«ã¯ãƒžãƒƒãƒã—ã¾ã›ã‚“
if (preg_match ("/\bweb\b/i", "PHP is the web scripting language of choice.")) {
print "マッãƒã™ã‚‹ã‚‚ã®ãŒä¸€ã¤ã¿ã¤ã‹ã‚Šã¾ã—ãŸã€‚";
} else {
print "マッãƒã™ã‚‹ã‚‚ã®ã¯ã¿ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚";
}
if (preg_match ("/\bweb\b/i", "PHP is the website scripting language of choice.")) {
print "マッãƒã™ã‚‹ã‚‚ã®ãŒä¸€ã¤ã¿ã¤ã‹ã‚Šã¾ã—ãŸã€‚";
} else {
print "マッãƒã™ã‚‹ã‚‚ã®ã¯ã¿ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚";
} |
|
例 3URLã‹ã‚‰ãƒ‰ãƒ¡ã‚¤ãƒ³åã‚’å¾—ã‚‹ // URLã‹ã‚‰ãƒ›ã‚¹ãƒˆåã‚’å¾—ã‚‹
preg_match("/^(http:\/\/)?([^\/]+)/i",
"http://www.php.net/index.html", $matches);
$host = $matches[2];
// ホストåã®æœ€å¾Œã®äºŒã¤ã‚’å¾—ã‚‹
preg_match("/[^\.\/]+\.[^\.\/]+$/",$host,$matches);
echo "ドメインå: ".$matches[0]."\n"; |
|
ã“ã®ä¾‹ã®å‡ºåŠ›ã¯ä»¥ä¸‹ã¨ãªã‚Šã¾ã™ã€‚
preg_match_all(),
preg_replace(),
preg_split()ã‚‚å‚照下ã•ã„。