පයිතන් නිත්ය ප්රකාශන වල ඇතුළත කට්ටල වල හයිෆනය
හයිෆනය - එය ද [ ] ඇතුළත විශේෂ සංකේතයකි
(නමුත් පිටත - නැත). ඔබට හයිෆනය ලෙසම සංකේතය අවශ්ය නම් - එය තබන්න
එම ස්ථානයේ,
එහිදී එය කණ්ඩායම් වෙන්කරන්නා ලෙස වටහා නොගනී
.
මෙය ඇති අර්ථය: ඔබට කණ්ඩායමක් සාදා ගත හැකිය
සංකේත, එය සැලකිල්ලට ගනිමින්. උදාහරණයක් ලෙස,
මේ ආකාරයට - '[:-@]' - ඔබ සිතන්නේ
කොලෝන්, හයිෆනය සහ @ සංකේතය තෝරා ගන්නා බව, නමුත්
සැබවින්ම එය කණ්ඩායම් සංකේත අතර ප්රතිඵලයක්
: සහ @. මෙම කණ්ඩායමට ඇතුළත් වන්නේ
පහත සංකේත: ? < = > :
ඒවා එන්නේ කොහෙන්ද? ASCII වගුවෙන් - කොලෝනයට @ සංකේතයට වඩා අඩු අංකයක් ඇත - එබැවින් කණ්ඩායමක් ලැබේ. එනම් සියලුම කණ්ඩායම් ASCII වගුව අනුව ලැබේ (අවශ්ය නම් මෙය භාවිතා කළ හැකිය).
මේ සමඟ කෙසේ සටන් කිරීමට: සංකේතය තබන්න
හයිෆනය එහිදී එය නිසැකවම වටහා නොගනී
කණ්ඩායම් සංකේතයක් ලෙස, උදාහරණයක් ලෙස, ආරම්භයේ හෝ
අවසානයේ (එනම් [ හෝ
]).
හයිෆනය escape කළ හැකිය - එවිට
එය තනි ස්ථානය අනුව නොසලකා ස්වයං අර්ථය දක්වයි.
ස්ථානය. උදාහරණයක් ලෙස, [:-@] වෙනුවට
ලියන්න [:\-@] - සහ කණ්ඩායම දැන් නැත
වනු ඇත, නමුත් සංකේත තුනක් ඇත - කොලෝන්,
හයිෆනය සහ @ සංකේතය @.
උදාහරණය
පහත උදාහරණයේ, සෙවුම් රටාව මෙයයි:
අංකය 1, පසුව අකුර 'a'
සිට 'z', පසුව අංකය 2:
txt = '1a2 1-2 1c2 1z2'
res = re.sub('1[a-z]2', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! 1-2 ! !'
උදාහරණය
දැන් අපි හයිෆනය escape කරමු. වී
ප්රතිඵලයක් ලෙස සෙවුම් රටාව මෙයයි: අංකය
1, පසුව අකුර 'a', හෝ
හයිෆනය, හෝ අකුර 'z', පසුව අංකය
2:
txt = '1a2 1-2 1c2 1z2'
res = re.sub('1[a\-z]2', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! ! 1c2 !'
උදාහරණය
හයිෆනය escape නොකර එය නැවත සකස් කළ හැකිය:
txt = '1a2 1-2 1c2 1z2'
res = re.sub('1[az-]2', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! ! 1c2 !'
උදාහරණය
පහත උදාහරණයේ, සෙවුම් රටාව මෙයයි:
පළමු සංකේතය - එය කුඩා අකුරු හෝ
හයිෆනය '-', පසුව අකුරු දෙක
'x':
txt = 'axx Axx -xx @xx'
res = re.sub('[a-z-]xx', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! Axx ! @xx'
උදාහරණය
පහත උදාහරණයේ, සෙවුම් රටාව මෙයයි:
පළමු සංකේතය - එය කුඩා, විශාල
අකුරු හෝ හයිෆනය '-', පසුව අකුරු දෙක
'x':
txt = 'axx Axx -xx @xx'
res = re.sub('[a-zA-Z-]xx', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! ! ! @xx'
උදාහරණය
හයිෆනය කණ්ඩායම් දෙකක් අතර තබා ගත හැකිය - එහිදී එය නිසැකවම තවත් එකක් නිර්මාණය නොකරයි කණ්ඩායම:
txt = 'axx 9xx -xx @xx'
res = re.sub('[a-z-0-9]xx', '!', txt)
print(res)
කේතය ක්රියාත්මක කිරීමේ ප්රතිඵලය:
'! ! ! @xx'
ප්රායෝගික කාර්යයන්
පේළියක් ලබා දී ඇත:
txt = 'xaz xBz xcz x-z x@z'
පහත රටාව අනුව සියලු පේළි සොයා ගන්න:
අකුර 'x', විශාල හෝ කුඩා
අකුර හෝ හයිෆනය, අකුර 'z'.
පේළියක් ලබා දී ඇත:
txt = 'xaz x$z x-z xcz x+z x%z x*z'
පහත රටාව අනුව සියලු පේළි සොයා ගන්න:
අකුර 'x', පසුව ඩොලර්, හෝ
හයිෆනය හෝ ප්ලස්, පසුව අකුර 'z'.