Match-වස්තුව
Match-වස්තුව නිරූපක ප්රකාශනයකට
නූලක සමපාතය පිළිබඳ තොරතුරු අඩංගු වස්තුවකි. Match-වස්තුව ලබා ගත හැක්කේ
පහත දැක්වෙන ක්රම යොදා ගනිමිනි: fullmatch,
match,
search.
Match-වස්තුවෙන් තොරතුරු උපුටා ගත හැක්කේ ප්රධාන ක්රම භාවිතයෙනි.
Match-වස්තුවට යොදන ප්රධාන ක්රම
| ක්රමය | අරමුණ |
|---|---|
group |
ශුන්ය කාසිපෙට්ටිය ආපසු දෙයි. |
groups |
කාසිපෙට්ටි වලින් සමන්විත tuple එකක් ආපසු දෙයි. |
groupdict |
නම් කරන ලද කාසිපෙට්ටි වලින් සමන්විත ශබ්දකෝෂයක් ආපසු දෙයි. |
span |
එක් කාසිපෙට්ටියක tuple එකේ පළමු සහ අවසාන දර්ශක ආපසු දෙයි. |
start |
එක් කාසිපෙට්ටියක tuple එකේ පළමු දර්ශකය ආපසු දෙයි. |
end |
එක් කාසිපෙට්ටියක tuple එකේ අවසාන දර්ශකය ආපසු දෙයි. |
උදාහරණය . ක්රමයක් නොමැතිව Match-වස්තුව
අපගේ නූලට match ක්රමය යොදමු:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
<re.Match object; span=(0, 3), match='123'>
උදාහරණය . group ක්රමය
දැන් අපි group ක්රමය භාවිතයෙන් Match object එකෙන් ශුන්ය කාසිපෙට්ටිය
ප්රතිදානය කරමු:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'123'
උදාහරණය . groups ක්රමය
කාසිපෙට්ටි වල tuples ප්රතිදානය කිරීම සඳහා ලබාගත් වස්තුවට
groups ක්රමය යොදමු:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
('1', '2')
උදාහරණය . groupdict ක්රමය
නම් කරන ලද කාසිපෙට්ටි වල ශබ්දකෝෂය ප්රතිදානය කිරීම සඳහා
groupdict ක්රමය යොදා ගත හැක:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
{'test1': '1', 'test2': '2'}
උදාහරණය . span ක්රමය
එක් tuple එකක පළමු සහ අවසාන දර්ශක වල tuple එකක් ප්රතිදානය කරමු. මේ සඳහා
අපි span ක්රමය භාවිතා කරමු:
res = re.match('\d+', txt)
print(res.span())
කේතය ක්රියාත්මක කිරීමෙන් පසුව ඔබ දර්ශක දෙකකින් සමන්විත tuple එකක් දකිනු ඇත. නමුත් මෙහිදී, අවසාන අගය අවසාන දර්ශකයට වඩා එකකින් වැඩි බව සලකන්න:
(0, 3)
උදාහරණය . start සහ end ක්රම
දර්ශක එකිනෙක වෙන වෙනම ආපසු ලබා දීම සඳහා, start
සහ end ක්රම යොදා ගත හැක:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
0
3