Питхон Регек примери

Pithon Regek Primeri



Пун облик редовног израза је Регуларни израз. То је важна карактеристика сваког програмског језика. То је образац стринга који се користи за подударање, претраживање или замену стрингова у вредности стринга. Образац регуларног израза се може користити у Питхон скрипти помоћу модула „ре“ Питхон-а. Овај модул има много типова функција за обављање различитих стринг операција. Различити метазнакови и специјалне секвенце се користе за дефинисање образаца регуларних израза за претрагу или замену задатака. Сврхе коришћења неких често коришћених метакарактера, специјалних секвенци и метода регуларних израза у Питхон скрипти су приказане у овом водичу.

Неки често коришћени метазнакови у регуларном изразу:









ликови Сврха
'+' Користи се за подударање једног или више појављивања одређеног карактера у низу.
'*' Користи се за подударање нула или више појављивања одређеног карактера у низу.
'?' Користи се за подударање нуле или једне појаве одређеног карактера у низу.
'^' Користи се за подударање са одређеним карактером или низом на почетку стринга.
'$' Користи се за подударање са одређеним карактером или низом на крају стринга.
'|' Користи се за подударање са било којим од вишеструких низова у низу. Ради као логика ИЛИ.
„[]“ Користи се за подударање низа знакова.
'{}' Користи се за подударање са одређеним бројем знакова.



Неке најчешће коришћене специјалне секвенце у регуларном изразу:





Секвенце Сврха
'\А' Користи се за подударање са одређеним карактером на почетку низа. Ради као знак „^“.
„\б“, „\Б“ „\б“ се користи за подударање са стрингом који садржи одређени карактер или реч на почетку или на крају стринга. „\Б“ ради супротно од „\б“.
„\д“, „\Д“ „\д“ се користи за подударање са децималним бројем у низу који је сличан „[0-9]“. „\Д“ ради супротно од „\д“.
„\с“, „\С“ „\с“ се користи за подударање са размаком у стрингу који је сличан „[\н\т\р\в]“. „\С“ ради супротно од „\с“.
„\в“, „\В“ „\в“ се користи за подударање алфабетских и нумеричких знакова у низу. „\В“ ради супротно од „\в“.
'\ВИТХ' Користи се за подударање са одређеним карактером на крају стринга. Ради као знак „$“.

Пример 1: Ускладите стринг помоћу функције Матцх().

Функција матцх() се користи за подударање са шаблоном регуларног израза на почетку стринга. Синтакса ове функције је дата на следећи начин:



Синтакса:

ре.меч ( узорак, низ, заставе = 0 )

Овде се први аргумент користи за дефинисање шаблона регуларног израза. Други аргумент се користи за дефинисање главног стринга. Трећи аргумент је опциони и користи се за дефинисање различитих типова заставица.

Креирајте Питхон датотеку са следећом скриптом која одговара шаблону регуларног израза са дефинисаним стрингом користећи функцију матцх(). Прво, дефинисани образац регуларног израза се користи за подударање. Затим, реч за претрагу се преузима од корисника и користи се као образац регуларног израза који се подудара са вредношћу стринга. Ако се пронађе било које подударање, тражена реч се штампа. У супротном, штампа се стринг „Није пронађена одговарајућа вредност“.

#Увезите неопходан модул
импорт ре

#Дефинишите функцију за штампање одговарајућег резултата
деф матцхСтринг ( ) :
#Проверите повратну вредност функције матцх().
ако упоредо са ! = Ништа:
принт ( ''' + мат.гроуп ( ) + '' се налази у '' + стрВалуе + ''' )
остало:
принт ( „Није пронађена ниједна одговарајућа вредност.“ )

#Дефинишите вредност стринга
стрВалуе = 'Први улази - први излази.'
#Упарите низ на основу шаблона
мат = ре.меч ( '^Прво' , стрВалуе )
#Позови функцију за штампање резултата подударања
матцхСтринг ( )

#Узми стринг за претрагу
инВалуе = инпут ( 'Унесите вредност претраге: ' )
мат = ре.меч ( инВалуе + , стрВалуе )
#Позови функцију за штампање резултата подударања
матцхСтринг ( )

Следећи излаз се појављује за „прву“ улазну вредност:

Пример 2: Пронађите стринг користећи Финдалл() функцију

Функција финдалл() се користи за враћање свих одговарајућих речи које се налазе у главном низу као торбу.

Синтакса:

ре.финдалл ( узорак, низ, заставе = 0 )

Овде се први аргумент користи за дефинисање шаблона регуларног израза. Други аргумент се користи за дефинисање главног стринга. Трећи аргумент је опциони и користи се за дефинисање различитих типова заставица.

Направите Питхон датотеку са следећом скриптом која преузима вредност главног стринга и вредност стринга за претрагу од корисника. Затим користите реч за претрагу  у обрасцу регуларног израза да бисте пронашли реч за претрагу у главном низу. Укупан број подударања се штампа у излазу.

#Увезите неопходан модул
импорт ре

#Узмите вредност низа
инВалуе = инпут ( 'Унесите стринг: ' )

#Узми реч за претрагу
срцВалуе = улаз ( 'Унесите реч за претрагу: ' )

#Тражи реч у низу
срцРесулт = ре.финдалл ( срцВалуе + '\Ин*' , инВалуе )
#Одштампајте резултат претраге
принт ( 'Реч '' + срцВалуе + '' се налази у низу'
+ стр ( само ( срцРесулт ) ) + 'пута.' )

Према излазу, реч за претрагу „јести“ налази се два пута у главном низу „Ми једемо да бисмо живели и не живимо да бисмо јели“.

Пример 3: Претражујте стринг помоћу функције Сеарцх().

Сеарцх() је још једна функција за претрагу одређеног узорка у вредности стринга. Садржи исте аргументе као и функције матцх() и финдалл(). Направите Питхон датотеку са следећом скриптом која претражује реч „Питхон“ у вредности стринга која ће бити преузета од корисника. Ако реч за претрагу постоји у улазној вредности, штампа се порука о успеху. У супротном, штампа се порука о грешци.

#Импорт ре модула
импорт ре

#Узмите вредност низа
инВалуе = инпут ( 'Унесите стринг: ' )
#Претражите одређену реч у вредности стринга
срцРесулт = поновна претрага ( р 'Питхон\в*' , инВалуе )

#Проверите да ли је реч за претрагу пронађена или не
ако срцРезултат:
принт ( ''' + срцРесулт.гроуп ( ) + '' се налази у '' + инВалуе + ''' )
остало:
принт ( „Стринг за претрагу није пронађен.“ )

Излаз:

Следећи излаз се појављује ако је улазни низ „Волим програмирање на Питхон-у“:

Следећи излаз се појављује ако је улазни низ „Волим ПХП програмирање“:

Пример 4: Замените стринг помоћу функције Суб().

Функција суб() се користи за претрагу одређеног низа на основу шаблона и замену са другом речју. Синтакса ове функције је дата на следећи начин:

Синтакса:

ре.суб ( образац, замени_стринг, главни_стринг )

Први аргумент ове функције садржи образац који се користи за претрагу одређеног стринга у главном низу.

Други аргумент ове функције садржи вредност стринга „замени“.

Трећи аргумент ове функције садржи главни стринг.

Ова функција враћа замењени стринг ако у главном низу постоји било која подударна реч на основу првог аргумента.

Направите Питхон датотеку са следећом скриптом која тражи две цифре на крају стринга. Ако стринг садржи две цифре на крају, цифре се замењују низом „$50“.

#Импорт ре модула
импорт ре

#Дефиниши главни стринг
стрВалуе = 'Цена књиге је 70'

#Дефинишите образац претраге
образац = '[0-9]{2}'

#Дефинишите вредност замене
реплацеВалуе = '50 долара'

#Претражите и замените низ на основу шаблона
модифиед_стрВалуе = ре.суб ( образац, реплацеВалуе, стрВалуе )
#Одштампајте оригиналне и измењене вредности стрингова
принт ( 'Оригинални стринг: ' + стрВалуе )
принт ( 'Измењени низ: ' + модифиед_стрВалуе )

Излаз:

Било их је 70 на крају главне жице. Дакле, 70 је замењено са 50 долара у замењеном низу.

Пример 5: Замените стринг помоћу функције Субн().

Функција субн() функционише као функција суб(), осим што враћа излаз као тупле где први индекс садржи замењену вредност, а други индекс садржи укупан број подударања.

Направите Питхон датотеку са следећом скриптом која претражује абецеде од А до Л у стрингу „ЛинукХинт.цом“ користећи субн() функцију:

#Импорт ре модула
импорт ре

#Дефиниши главни стринг
стрВалуе = „ЛинукХинт.цом“

#Дефинишите образац претраге
образац = '[ДО]'

#Дефинишите вредност замене
реплацеВалуе = '*'

#Претражите и замените низ на основу шаблона
модифиед_стрВалуе = ре.субн ( образац, реплацеВалуе, стрВалуе )
#Одштампајте оригинални стринг и излаз субн()
принт ( „Оригинални низ: ' + стрВалуе )
принт ( 'Излаз функције субн(): ' )
принт ( модифиед_стрВалуе )

Излаз:

Према следећем излазу, знакови „Л“ и „Х“ су замењени знаком „*“.

Пример 6: Поделите стринг помоћу функције Сплит().

Направите Питхон датотеку са следећом скриптом која је користила функцију сплит() да подели главни стринг на више делова на основу обрасца регуларног израза:

#Импорт ре модула
импорт ре

#Дефиниши вредност стринга
стрВал= 'Рупа Актер; Нира Цховдхури; Мазхарул Ислам'
#Дефинишите образац који ће се користити за поделу података
образац = '[^А-За-з ]'
#Сачувајте подељене вредности на листи
сплит_ресулт = ре.сплит ( образац, стрВал )
принт ( 'Излаз функције сплит()': )
принт ( сплит_ресулт )

Излаз:

Према излазу, главни стринг је подељен на три дела на основу „[^А-За-з ]“ обрасца који се користи у скрипти.

Закључак

Сврха најчешће коришћених метакарактера, опсега и уграђених функција Питхон-а за претрагу, замену и раздвајање стрингова приказана је у овом водичу помоћу једноставних Питхон скрипти.