Python හි search method එකෙහි group method එක හරහා කැපූ කොටස් (Capture groups)
කැපූ කොටස් (capture groups) සමඟ වැඩ කිරීම සඳහා විකල්ප ක්රමයක් වන්නේ
group method එක භාවිතා කිරීමයි.
එහි පරාමිතිය තුළ පෙන්විය යුතු කැපූ කොටසේ (capture group) අංකය
දක්වනු ලැබේ. පරාමිතියේ
0 දක්වන්නේ නම් හෝ එය හිස්ව තබන්නේ නම්,
regular expression එක සමඟ සමපාත වන
සම්පූර්ණ උප string එක ලබා දෙනු ඇත.
අපට string එකක් ඇතැයි සිතමු:
txt = '123 456 789'
search method එකේ regular expression එකකින් නිර්වචනය කරන ලද ඉලක්කම් සමඟ පළමු
සමපාතය (match)
එයින් ප්රතිදානය කරමු.
ඉන්පසු උප string එක කැපූ කොටස් (capture groups) තුනකට දමා,
ඒ සෑම එකක්ම group method එක භාවිතයෙන් ප්රතිදානය කරමු:
res = re.search('(\d+)(\d+)(\d+)', txt)
print(res.group(0)) # '123' ප්රතිදානය කරයි
print(res.group(1)) # '1' ප්රතිදානය කරයි
print(res.group(2)) # '2' ප්රතිදානය කරයි
print(res.group(3)) # '3' ප්රතිදානය කරයි
අඩු string එකක් ලබා දී ඇත:
txt = 'username:john'
'username:' පළමු කැපූ කොටසට (capture group) දමන්න,
'john' - දෙවැන්නට දමන්න. සියලුම
කැපූ කොටස් (capture groups) කොන්සෝලයට ප්රතිදානය කරන්න.
අඩු string එකක් ලබා දී ඇත:
txt = '123 aaabbbccc'
අකුරු සලකුණු සියල්ල කැපූ කොටස් (capture groups) තුනකට වෙන් කරන්න
එවිට, 'a' අකුරෙන් සමන්විත උප string එක
පළමු කැපූ කොටසට (capture group) වැටේ,
'b' - දෙවැන්නට, 'c' -
තෙවැන්නට වැටේ. සියලුම කැපූ කොටස් (capture groups) කොන්සෝලයට ප්රතිදානය කරන්න.