preg_match ශ්‍රිතය

preg_match ශ්‍රිතය නිත්‍ය ප්‍රකාශනයකට අනුරූප වන ගැලපීම් තන්තුවක සොයයි. පළමු පරාමිතිය ලෙස නිත්‍ය ප්‍රකාශන ආකෘතිය, දෙවන පරාමිතිය ලෙස සෙවුම් කිරීම සඳහා වන තන්තුව, තෙවන පරාමිතිය (විකල්ප) ලෙස හමු වූ ගැලපීම් සුරැකීම සඳහා වන අරාව, සිව්වන පරාමිතිය (විකල්ප) ලෙස ධජ, පස්වන පරාමිතිය (විකල්ප) ලෙස සෙවුම ආරම්භ කිරීමේ විස්ථාපනය ලබා ගනී.

වාක්‍ය රචනා ශිල්පය

phppreg_match(pattern, subject, [matches], [flags], [offset]);

ධජ

ධජය නියතය විස්තරය
PREG_PATTERN_ORDER 1 ප්‍රතිඵල ආකෘති අනුව ක්‍රමවත් කර ඇත (පෙරනිමිය)
PREG_SET_ORDER 2 ප්‍රතිඵල ගැලපීම් කට්ටල අනුව ක්‍රමවත් කර ඇත
PREG_OFFSET_CAPTURE 256 තන්තුව තුළ ගැලපීමේ පිහිටීම ආපසු ලබා දෙයි
PREG_UNMATCHED_AS_NULL 512 ගැළපෙන උප-ආකෘති NULL ලෙස ආපසු ලබා දෙනු ලැබේ

උදාහරණය

තන්තුවක ඉලක්කම් අඩංගු දැයි පරීක්ෂා කරමු:

php<?php
  $res = preg_match('/\d+/', 'abc123');
  echo $res;
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php1

උදාහරණය

තන්තුවෙන් සියලුම ඉලක්කම් අරාවකට උපුටා ගනිමු:

php<?php
  preg_match('/\d+/', 'abc123', $matches);
  var_dump($matches);
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php[0 => '123']

උදාහරණය

නිත්‍ය ප්‍රකාශනයක නම් කළ කණ්ඩායම් භාවිතා කිරීම:

php<?php
  preg_match('/(?P<name>\w+)\s+(?P<age>\d+)/', 'John 25', $matches);
  var_dump($matches);
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php[
  0 => 'John 25',
  'name' => 'John',
  1 => 'John',
  'age' => '25',
  2 => '25'
]

උදාහරණය

ගැලපීමේ පිහිටීම ලබා ගැනීම සඳහා PREG_OFFSET_CAPTURE ධජය භාවිතා කිරීම:

php<?php
  preg_match('/\d+/', 'abc123', $matches, PREG_OFFSET_CAPTURE);
  var_dump($matches);
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php[
  0 => [
    0 => '123',
    1 => 3
  ]
]

උදාහරණය

විස්ථාපනය (offset) නියම කරමින් සෙවීම:

php<?php
  preg_match('/\d+/', '123abc456', $matches, 0, 3);
  var_dump($matches);
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php[0 => '456']

උදාහරණය

විද්‍යුත් තැපැල් ලිපිනයක වලංගුභාවය පරීක්ෂා කිරීම:

php<?php
  $email = 'test@example.com';
  $res = preg_match('/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/', $email);
  echo $res ? 'Valid' : 'Invalid';
?>

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

php'Valid'

තවද බලන්න

  • preg_match_all ශ්‍රිතය,
    තන්තුවක ඇති සියලුම ගැලපීම් සොයයි
  • preg_replace ශ්‍රිතය,
    නිත්‍ය ප්‍රකාශනයකට අනුව ප්‍රතිස්ථාපනය කරයි