නිති යෙදුම් මගින් PHP හි සෙවීමේ කැපෑරුම්
අපට වසමක් අඩංගු නිශ්චිත නූලක් ඇතැයි සිතමු:
<?php
$str = 'eee site.ru bbb';
?>
අපි මෙම වසම සොයාගෙන එහි කොටස් වෙන් කරමු: වසම් නම එහි කලාපයෙන් වෙන් කරන්න. මේ සඳහා අපි නිති යෙදුම්වල විශේෂ කැපෑරුම් භාවිතා කරමු.
කැපෑරුම් යනු අරාවේ මූලද්රව්ය වන අතර, සෙවූ දේහි කොටස් තැබිය හැකිය නිති යෙදුමකින්. අපගේ නඩුවේ පළමු කැපෑරුමේ අපට වසම් නම තැබිය හැකිය, දෙවනුව - එහි කලාපය.
අපි මෙය කරමු. පළමුව නිති යෙදුම ලියමු, නූලක වසම සොයා ගන්නා:
<?php
$reg = '#[a-z0-9_-]+\.[a-z]{2,}#';
?>
දැන් අපගේ නිති යෙදුමේ දක්වමු, කුමන කොටස් කුමන කැපෑරුමකට වැටෙන්නේ ද යන්න. මෙය වක්ර වරහන භාවිතයෙන් සිදු කෙරේ. අපි ඒවා භාවිතා කර වසම් නම සොයන නිති යෙදුමේ කොටස හඳුනා ගනිමු, සහ සොයන කොටස වසම් කලාපය:
<?php
$reg = '#([a-z0-9_-]+)\.([a-z]{2,})#';
?>
දැන් ශ්රිතයේ preg_match ලෙස
තුන්වන පරාමිතිය අපි විචල්යයක් (ඕනෑම නමක්) නියම කරමු:
<?php
preg_match($reg, $str, $res);
?>
නම් කළ විචල්යයට සොයාගත් දත්ත සහිත අරාවක් වැටෙනු ඇත කැපෑරුම්. මෙම අරාවේ බිංදුවේ මූලද්රව්යයේ සොයාගත් නූල තබා ගනු ඇත, පළමු මූලද්රව්යයේ - පළමු කැපෑරුම, දෙවන මූලද්රව්යයේ - දෙවන කැපෑරුම සහ යනාදී වශයෙන්:
<?php
preg_match($reg, $str, $res);
var_dump($res); // ['site.ru', 'site', 'ru'] එළියට දමනු ඇත
?>
දිනයක් සහිත නූලක් ලබා දී ඇත:
<?php
$str = '2025-12-31';
?>
වර්ෂය, මාසය සහ දිනය වෙන වෙනම කැපෑරුම්වල තබන්න.
ගොනු නාමයක් සහිත නූලක් ලබා දී ඇත:
<?php
$str = 'index.html';
?>
ගොනුවේ නම සහ එහි දිගුව වෙන වෙනම කැපෑරුම්වල තබන්න කැපෑරුම්.