欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 中使用正則表達(dá)式轉(zhuǎn)義

 更新時(shí)間:2023年06月12日 11:01:26   作者:跡憶客  
這篇文章主要介紹了Python 正則表達(dá)式轉(zhuǎn)義,在 Python 中,正則表達(dá)式轉(zhuǎn)義sub()方法用于替換字符串,替換后的字符串由 re 模塊中的 Python 內(nèi)置方法返回,需要的朋友可以參考下

這篇文章是關(guān)于 Python 正則表達(dá)式轉(zhuǎn)義的。 此外,我們將介紹 Python 正則表達(dá)式轉(zhuǎn)義以及如何通過(guò)適當(dāng)?shù)氖纠a使用它,以及 Python 正則表達(dá)式的多種用途。

此外,Python 支持使用正則表達(dá)式(或正則表達(dá)式)對(duì)字符串進(jìn)行搜索和替換操作。

Python 正則表達(dá)式轉(zhuǎn)義

RegEx 是一種根據(jù)預(yù)定義模式匹配文本的強(qiáng)大技術(shù)。 將文本與特定模式進(jìn)行比較可以檢測(cè)它是否存在。

它還可以將模式分解為子模式。 在 Python 中,正則表達(dá)式轉(zhuǎn)義可以執(zhí)行范圍廣泛的任務(wù)。

它可以執(zhí)行搜索和替換操作、替換文本中的模式以及檢查字符串是否包含特定模式。 今天我們還將使用正則表達(dá)式執(zhí)行搜索和替換操作。

Python 中的正則表達(dá)式可以使用標(biāo)準(zhǔn)庫(kù)中的 re 模塊來(lái)表達(dá)。 正則表達(dá)式和字符串考慮它們的主要目的,即執(zhí)行搜索。

如果有第一個(gè)匹配項(xiàng),則將返回匹配項(xiàng)。

Python 有一個(gè)默認(rèn)模塊 re,它可以幫助進(jìn)行搜索和替換。 我們的代碼必須在開始時(shí)導(dǎo)入模塊才能使用它。

import re

示例代碼:

import re
match = re.search(r'Analytics', 'DataScience: Data Science & Analytics\                                    subfield of AI')
print(match)
print(match.group())
print("Begin the Index:", match.start())
print("Let's finish the Index:", match.end())

輸出:

<re.Match object; span=(28, 37), match='Analytics'>
Analytics
Begin the Index: 28
Let's finish the Index: 37

Python 正則表達(dá)式轉(zhuǎn)義的語(yǔ)法

原始屬性在這里由 r 字符(r’property’)表示,而不是由正則表達(dá)式表示。 與常規(guī)字符串不同,純字符串不會(huì)將 \ 字符解釋為轉(zhuǎn)義字符。

由于正則表達(dá)式引擎使用 / 字符進(jìn)行轉(zhuǎn)義的方式,它使用 / 字符進(jìn)行轉(zhuǎn)義。

讓我們用 Python 對(duì)此進(jìn)行詳細(xì)說(shuō)明。

import re
# When an escape() is used in the first case, it returns a string with BackSlash '/' before every non-Alphanumeric character. In the second case, it returns a string with BackSlash '/' before '' only.
print(re.escape("It was really a wonderful experience so far"))
print(re.escape("I am curious about the experience [a-9], she said \t ^Awesome"))

輸出:

It\ was\ really\ a\ wonderful\ experience\ so\ far
I\ am\ curios\ about\ the\ experience\ \[a\-9\],\ she\ said\ \    \ \^Awesome

另外,如果要用Python中的正則表達(dá)式檢查字符串中是否存在某個(gè)單詞,可以用逗號(hào)分隔字符串。

只要字符串中沒有轉(zhuǎn)義字符,r 就會(huì)使字符串成為原始字符串,不處理轉(zhuǎn)義字符。

此外,re.match 從字符串的開頭開始匹配。 這意味著它搜索字符串和模式之間的精確匹配。

如果您需要在任何地方匹配字符串中的任何內(nèi)容,請(qǐng)使用 re.search。 下面是一個(gè)例子。

import re
line = 'This,is,a,practice,string'
re.match("practice", line)
re.search("practice", line)

輸出:

<re.Match object; span=(10, 18), match='practice'>

此外,我們將了解 Python 正則表達(dá)式的多種用途。

Python 正則表達(dá)式的多次使用

搜索并替換為正則表達(dá)式

在 regex 方法中,搜索一個(gè)字符串,然后替換一些其他值。 Python 的 re.sub() 模塊中的 re.sub() 函數(shù)用于完成此操作。

語(yǔ)法:

re.sub(pattern, replacement, string, count=0, flags=0)

我們可以使用 Python 使用正則表達(dá)式搜索和查找字符串。 在這種情況下,字符串是包含您要操作的字符串的變量。

如果模式在字符串中多次出現(xiàn),我們可以指定您希望模式被替換多少次。 0 是默認(rèn)值; 在任何情況下,它都是可選的。

無(wú)需指定正則表達(dá)式標(biāo)志。

示例代碼:

import re
str = "abid304@outlook.com"
print(re.sub("[a-z]*@", "abc@", str))

輸出:

abid304abc@outlook.com

用正則表達(dá)式替換多模式

可以使用正則表達(dá)式一次替換多個(gè)模式。 可以使用以下語(yǔ)法輕松完成此操作。

語(yǔ)法:

re.sub(pattern_11 | pattern_22, replacement, string, count=0, flags=0)

示例代碼:

import re
str = "MachineLearning is the Subfield of AI"
print(re.sub(r"(\s)|(-)", ",", str))

輸出:

MachineLearning,is,the,Subfield,of,AI

使用正則表達(dá)式將多個(gè)模式替換為多個(gè)替換值

正則表達(dá)式也可用于用不同的替換項(xiàng)替換多個(gè)模式。 如以下示例所示,需要稍作修改。

示例代碼:

import re
def convrt_case(mtch_obj):
  if mtch_obj.group(1) is not None:
    return mtch_obj.group(1).lower()
  if mtch_obj.group(2) is not None:
    return mtch_obj.group(2).upper()
str = "mACHINE lEARNING IS THE sUBFIELD OF ai"
print(re.sub(r"([A-Z]+)|([a-z]+)", convrt_case, str))

輸出:

Machine Learning is the Subfield of AI

如本例所示,該字符串同時(shí)包含需要替換的大寫和小寫字母。 大寫字母需要替換為小寫字母,反之亦然。

我們將創(chuàng)建兩個(gè)組,然后添加一個(gè)函數(shù)來(lái)替換它們。

在 Python 中,正則表達(dá)式轉(zhuǎn)義 sub() 方法用于替換字符串。 替換后的字符串由 re 模塊中的 Python 內(nèi)置方法返回。

確保導(dǎo)入 re 模塊。 在此方法中,搜索字符串中的模式并用新表達(dá)式替換。

我們希望這篇 Python 文章能幫助您了解如何更有效地在 Python 中使用正則表達(dá)式轉(zhuǎn)義。

到此這篇關(guān)于Python 正則表達(dá)式轉(zhuǎn)義的文章就介紹到這了,更多相關(guān)Python 正則表達(dá)式轉(zhuǎn)義內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python版學(xué)生管理系統(tǒng)

    python版學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python版學(xué)生管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 基于OpenCV python3實(shí)現(xiàn)證件照換背景的方法

    基于OpenCV python3實(shí)現(xiàn)證件照換背景的方法

    這篇文章主要介紹了基于OpenCV python3實(shí)現(xiàn)證件照換背景的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 使用Python計(jì)算偏導(dǎo)數(shù)

    使用Python計(jì)算偏導(dǎo)數(shù)

    偏導(dǎo)數(shù)在數(shù)學(xué)、物理、工程等領(lǐng)域中都有廣泛的應(yīng)用,特別是在描述多變量系統(tǒng)的變化率、梯度、最小值和最大值等方面,下面我們就來(lái)看看如何利用Python計(jì)算偏導(dǎo)數(shù)吧
    2024-01-01
  • Python實(shí)現(xiàn)的tcp端口檢測(cè)操作示例

    Python實(shí)現(xiàn)的tcp端口檢測(cè)操作示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的tcp端口檢測(cè)操作,結(jié)合實(shí)例形式分析了Python使用socket模塊實(shí)現(xiàn)tcp端口檢測(cè)功能的相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • Python Selenium網(wǎng)頁(yè)自動(dòng)化利器使用詳解

    Python Selenium網(wǎng)頁(yè)自動(dòng)化利器使用詳解

    這篇文章主要為大家介紹了使用Python Selenium實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Python接收手機(jī)短信的代碼整理

    Python接收手機(jī)短信的代碼整理

    在本篇文章里小編給大家整理的是一篇關(guān)于Python接收手機(jī)短信的代碼內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-08-08
  • Python中的joblib模塊詳解

    Python中的joblib模塊詳解

    這篇文章主要介紹了Python中的joblib模塊詳解,用已知的數(shù)據(jù)集經(jīng)過(guò)反復(fù)調(diào)優(yōu)后,訓(xùn)練出一個(gè)較為精準(zhǔn)的模型,想要用來(lái)對(duì)格式相同的新數(shù)據(jù)進(jìn)行預(yù)測(cè)或分類,常見的做法是將其訓(xùn)練好模型封裝成一個(gè)模型文件,直接調(diào)用此模型文件用于后續(xù)的訓(xùn)練,需要的朋友可以參考下
    2023-08-08
  • Python數(shù)據(jù)處理的三個(gè)實(shí)用技巧分享

    Python數(shù)據(jù)處理的三個(gè)實(shí)用技巧分享

    數(shù)據(jù)處理無(wú)所不在,掌握常用技巧,事半功倍。這篇文章將使用Pandas開展數(shù)據(jù)處理分析,總結(jié)其中常用、好用的數(shù)據(jù)分析技巧,感興趣的可以學(xué)習(xí)一下
    2022-04-04
  • Python 基于 pygame 實(shí)現(xiàn)輪播圖動(dòng)畫效果

    Python 基于 pygame 實(shí)現(xiàn)輪播圖動(dòng)畫效果

    在Python中可以適應(yīng)第三方庫(kù)pygame來(lái)實(shí)現(xiàn)輪播圖動(dòng)畫的效果,使用pygame前需確保其已經(jīng)安裝,本文通過(guò)實(shí)例代碼介紹Python 基于 pygame 實(shí)現(xiàn)輪播圖動(dòng)畫效果,感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • PyTorch如何搭建一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)

    PyTorch如何搭建一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)

    這篇文章主要介紹了PyTorch如何搭建一個(gè)簡(jiǎn)單的網(wǎng)絡(luò),幫助大家更好的理解和學(xué)習(xí)PyTorch,感興趣的朋友可以了解下
    2020-08-08

最新評(píng)論