⊗pyPmRELAB 72 of 129 menu

Python නිතර යෙදීම් වල ධනාත්මක හා ඍණාත්මක පිරික්සුම්

සමහරවිට මේ වගේ ගැටලුවක් විසඳීමට අවශ්‍ය වේ: 'aaa' නූල සොයාගෙන එය '!' කියලා ප්‍රතිස්ථාපනය කරන්න, නමුත් ඊළඟට 'aaa' වලට 'x' තියෙන විට පමණයි, ඒ 'x' එය ම ප්‍රතිස්ථාපනය නොකර. අපි ගැටලුව 'පිළිවෙලට' විසඳීමට උත්සාහ කළොත්, එය සාර්ථක නොවේ:

txt = 'aaax baaa' res = re.sub('aaax', '!', txt) print(res) # shows '! baaa', but we wanted '!x baaa'

ඉදිරිපස පිරික්සුම

ගැටලුව විසඳීමට අවශ්‍ය ක්‍රමයක් කියන්න, 'x' ප්‍රතිස්ථාපනය කළ යුතු නැති බව. එය සිදු කරන්නේ විශේෂ වරහන් (?= ) භාවිතා කර, පමණක් බලාගෙන, ගන්නේ නැත.

මෙම වරහන් හැඳින්වෙන්නේ ධනාත්මක ඉදිරිපස පිරික්සුම. ධනාත්මක - මොකද 'x' (අපගේ නඩුවේ) තිබිය යුතුය - එවිට පමණක් ප්‍රතිස්ථාපනය සිදුවේ.

අපි මෙම වරහන් අපේ ගැටලුව විසඳීමට යොදා ගනිමු:

txt = 'aaax baaa' res = re.sub('aaa(?=x)', '!', txt) print(res) # shows '!x aaab

තියෙනවා ඍණාත්මක ඉදිරිපස පිරික්සුම - (?! ) - එය, ඊට පටහැනිව, කියනවා, එහි යමක් නොතිබිය යුතු බව. ඊළඟ උදාහරණයේ, ප්‍රතිස්ථාපනය සිදුවන්නේ, 'aaa' ට පසුව 'x' නොමැති නම් පමණි:

txt = 'aaax aaab' res = re.sub('aaa(?!x)', '!', txt) print(res) # shows 'aaax !b'

පසුපස පිරික්සුම

ඒ හා සමානව තියෙනවා ධනාත්මක පසුපස පිරික්සුම - (?<= ). ඊළඟ උදාහරණයේ ප්‍රතිස්ථාපනය සිදුවන්නේ, 'aaa' ට ඉදිරියෙන් 'x' තිබේ නම් පමණි:

txt = 'xaaa' res = re.sub('(?<=x)aaa', '!', txt) print(res) # shows 'x!'

තවද තියෙනවා ඍණාත්මක පසුපස පිරික්සුම - (?<! ). ඊළඟ උදාහරණයේ ප්‍රතිස්ථාපනය සිදුවන්නේ, 'aaa' ට ඉදිරියෙන් 'x' නොමැති නම් පමණි:

txt = 'baaa' res = re.sub('(?<!x)aaa', '!', txt) print(res) # shows 'b!'

ප්‍රායෝගික ගැටලු

ශ්‍රිත නම් අඩංගු නූලක් දී ඇත:

txt = 'func1() func2() func3()'

නූලෙන් ශ්‍රිත නම් වල අරාව ලබා ගන්න.

ටැගයක් සහිත නූලක් දී ඇත:

txt = '<a href="" class="eee" id="zzz">'

මෙම ටැගයේ ගුණාංග නම් වල අරාව ලබා ගන්න.

විචල්‍ය සහිත නූලක් දී ඇත:

txt = '$aaa $bbb $ccc xxxx'

ඩොලර් සලකුණක් ඉදිරියෙන් ඇති උපනූල් ලබා ගන්න.

සිංහල
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
අපි වෙබ් අඩවිය ක්‍රියාත්මක කිරීම, විශ්ලේෂණය සහ පුද්ගලීකරණය සඳහා කුකී භාවිතා කරමු. දත්ත සැකසීම සිදුකරනු ලබන්නේ ගෝපනීයතා ප්‍රතිපත්තිය අනුව ය.
සියල්ල පිළිගන්න කොන්දේසි ප්‍රතික්ෂේප කරන්න