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

Python控制臺(tái)獲取輸入與常見(jiàn)的正則表達(dá)式用法

 更新時(shí)間:2023年12月27日 11:08:21   作者:Grape_o  
這篇文章主要給大家介紹了關(guān)于Python控制臺(tái)獲取輸入與常見(jiàn)的正則表達(dá)式用法的相關(guān)資料,在Python編程中,控制臺(tái)輸入和正則表達(dá)式是兩個(gè)重要而實(shí)用的概念,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

在Python編程中,控制臺(tái)輸入和正則表達(dá)式是兩個(gè)重要而實(shí)用的概念。掌握這兩個(gè)技巧可以幫助我們更靈活地處理用戶輸入以及對(duì)文本進(jìn)行復(fù)雜的匹配和處理。本文中將詳細(xì)介紹Python中如何通過(guò)控制臺(tái)獲取用戶輸入以及如何使用正則表達(dá)式進(jìn)行文本處理。深入探討輸入類型轉(zhuǎn)換、異常處理、多個(gè)輸入值的存儲(chǔ)等方面,并分享一些常見(jiàn)的正則表達(dá)式用法,如匹配數(shù)字、替換字符串、提取模式內(nèi)容等。

一、控制臺(tái)獲取輸入

1.1 字符串輸入

# 輸入字符串并賦值給變量str1:
str1 = input("請(qǐng)輸入一個(gè)字符串: ")

1.2 整數(shù)輸入

# 輸入整數(shù)并賦值給變量count:
count = int(input("請(qǐng)輸入一個(gè)整數(shù): "))

1.3 浮點(diǎn)數(shù)輸入

# 輸入浮點(diǎn)數(shù)并賦值給變量float_num:
float_num = float(input("請(qǐng)輸入一個(gè)浮點(diǎn)數(shù): "))

1.4 布爾值輸入

# 輸入布爾值(True/False)并賦值給變量is_true:
is_true = bool(input("請(qǐng)輸入一個(gè)布爾值(True/False): "))

請(qǐng)注意,bool()函數(shù)將任何非空字符串解釋為True,空字符串解釋為False。

1.5 列表輸入

# 輸入多個(gè)數(shù)字以空格分隔,并將它們作為列表存儲(chǔ)在變量list1中:
list1 = input("請(qǐng)輸入多個(gè)數(shù)字(以空格分隔): ").split()
list1 = [int(num) for num in list1]  # 將輸入的數(shù)字轉(zhuǎn)換為整數(shù)類型
print(list1)

這里使用了split()方法將輸入的字符串切分成一個(gè)字符串列表,并使用列表推導(dǎo)式將字符串轉(zhuǎn)換為整數(shù)類型。

# 輸入多個(gè)字符串以逗號(hào)分隔,并將它們作為列表存儲(chǔ)在變量str_list中:
str_list = input("請(qǐng)輸入多個(gè)字符串(以逗號(hào)分隔): ").split(',')

這里使用了split()方法將輸入的字符串切分成一個(gè)字符串列表,以逗號(hào)為分隔符。

1.6 匯總

# 在Python中,可以使用input()函數(shù)從控制臺(tái)獲取用戶的輸入。然后,根據(jù)需要進(jìn)行類型轉(zhuǎn)換和賦值。下面是一些示例:

# 輸入字符串并賦值給變量str1:
str1 = input("請(qǐng)輸入一個(gè)字符串: ")
# 輸入整數(shù)并賦值給變量count:
count = int(input("請(qǐng)輸入一個(gè)整數(shù): "))
# 輸入浮點(diǎn)數(shù)并賦值給變量float_num:
float_num = float(input("請(qǐng)輸入一個(gè)浮點(diǎn)數(shù): "))
# 輸入布爾值(True/False)并賦值給變量is_true:
is_true = bool(input("請(qǐng)輸入一個(gè)布爾值(True/False): "))
# 請(qǐng)注意,bool()函數(shù)將任何非空字符串解釋為True,空字符串解釋為False。

# 輸入多個(gè)數(shù)字以空格分隔,并將它們作為列表存儲(chǔ)在變量list1中:
list1 = input("請(qǐng)輸入多個(gè)數(shù)字(以空格分隔): ").split()
list1 = [int(num) for num in list1]  # 將輸入的數(shù)字轉(zhuǎn)換為整數(shù)類型
print(list1)
# 這里使用了split()方法將輸入的字符串切分成一個(gè)字符串列表,并使用列表推導(dǎo)式將字符串轉(zhuǎn)換為整數(shù)類型。

# 輸入多個(gè)字符串以逗號(hào)分隔,并將它們作為列表存儲(chǔ)在變量str_list中:
str_list = input("請(qǐng)輸入多個(gè)字符串(以逗號(hào)分隔): ").split(',')
# 這里使用了split()方法將輸入的字符串切分成一個(gè)字符串列表,以逗號(hào)為分隔符。

# 記住,在處理用戶輸入時(shí)要小心異常情況,例如錯(cuò)誤的類型轉(zhuǎn)換或無(wú)效的輸入。

二、正則表達(dá)式

2.1 匹配數(shù)字

# 導(dǎo)入re模塊:
import re
# 匹配字符串中的數(shù)字:
pattern = r'\d+'  # 匹配連續(xù)的數(shù)字
text = "abc123def456ghi"
result = re.findall(pattern, text)
print(result)  # 輸出: ['123', '456']

2.2 模式檢查

# 檢查字符串是否符合特定的模式:
pattern = r'^[A-Za-z0-9]+$'  # 檢查是否只包含字母和數(shù)字
text = "abc123"
result = re.match(pattern, text)
if result:
    print("字符串符合要求")
else:
    print("字符串不符合要求")

2.3 替換字符

# 替換字符串中的部分內(nèi)容:
pattern = r'\s+'  # 匹配連續(xù)的空格
text = "Hello   World"
new_text = re.sub(pattern, ' ', text) #表示把多個(gè)空格替換成一個(gè)空格
print(new_text)  # 輸出: "Hello World"

2.4 切分字符串

# 切分字符串:
pattern = r'[,\s]+'  # 匹配逗號(hào)或空格
text = "apple,banana,orange"
result = re.split(pattern, text)
print(result)  # 輸出: ['apple', 'banana', 'orange']

2.5 搜索并提取匹配的部分

# 搜索并提取匹配的部分:
pattern = r'\d{3}-\d{4}-\d{4}'  # 匹配電話號(hào)碼的模式
text = "我的電話號(hào)碼是:123-4567-8901"
result = re.search(pattern, text)
if result:
    print(result.group())  # 輸出: '123-4567-8901'

注意: re.search() 與re.match()返回第一個(gè)匹配項(xiàng),與 re.search() 不同的是,re.match() 方法只匹配字符串的開(kāi)頭部分。因此,如果需要輸出所有匹配項(xiàng),應(yīng)該使用 re.findall() 方法。

2.6 使用捕獲組提取匹配的部分

# 使用捕獲組提取匹配的部分:
pattern = r'(\d{3})-(\d{4})-(\d{4})'  # 匹配電話號(hào)碼的模式,并使用捕獲組分別提取區(qū)號(hào)、中間號(hào)和尾號(hào)
text = "我的電話號(hào)碼是:123-4567-8901"
result = re.search(pattern, text)
if result:
    area_code = result.group(1)
    middle_number = result.group(2)
    last_number = result.group(3)
    print(area_code, middle_number, last_number)  # 輸出: '123', '4567', '8901'    

2.7 非貪婪匹配

# 非貪婪匹配(匹配最短的字符串):
pattern = r'<.*?>'  # 非貪婪匹配尖括號(hào)之間的內(nèi)容
text = "<p>這是一個(gè)段落</p><p>另一個(gè)段落</p>"
result = re.findall(pattern, text)
print(result)  # 輸出: ['<p>', '</p>', '<p>', '</p>']

2.8 忽略大小寫匹配

# 忽略大小寫匹配:
pattern = r'python'
text = "Python is a programming language"
result = re.findall(pattern, text, re.IGNORECASE)
print(result)  # 輸出: ['Python']

2.9 使用預(yù)定義字符類

# 使用預(yù)定義字符類:
pattern = r'\w+'  # 匹配字母、數(shù)字和下劃線
text = "Hello 123_world*&"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Hello', '123_world']

2.10 自定義字符類

# 自定義字符類:
pattern = r'[aeiou]'  # 匹配元音字母
text = "apple orange banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['a', 'e', 'o', 'a', 'a']

2.11 零寬斷言

# 零寬斷言(Lookahead/Lookbehind):零寬斷言允許你在匹配字符串時(shí)指定一些條件,但不會(huì)將這些條件包含在最終的匹配結(jié)果中。例如,可以使用正向零寬斷言來(lái)匹配前面是特定模式的文本:
pattern = r'\w+(?=ing)'  # 匹配以 "ing" 結(jié)尾的單詞的前面部分
text = "running jumping swimming"
result = re.findall(pattern, text)
print(result)  # 輸出: ['runn', 'jump']

2.12 多行模式

# 多行模式:使用多行模式可以處理多行文本,其中 ^ 和 $ 元字符匹配每行的開(kāi)頭和結(jié)尾。通過(guò)傳遞 re.MULTILINE 標(biāo)志給 re.compile() 函數(shù)或使用 re.M 縮寫標(biāo)志來(lái)啟用多行模式:
pattern = r'^\d+$'  # 匹配只包含數(shù)字的行
text = "123\nabc\n456\n789"
result = re.findall(pattern, text, re.MULTILINE)
print(result)  # 輸出: ['123', '456', '789']

2.13 嵌入式修飾符

# 嵌入式修飾符:可以在正則表達(dá)式中使用嵌入式修飾符來(lái)改變匹配的行為。例如,使用 (?i) 來(lái)忽略大小寫匹配:
pattern = r'(?i)python'  # 忽略大小寫匹配 "python"
text = "Python is a programming language"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Python']

2.14 替換時(shí)使用回調(diào)函數(shù)

# 替換時(shí)使用回調(diào)函數(shù):使用 re.sub() 函數(shù)進(jìn)行替換時(shí),可以傳遞一個(gè)回調(diào)函數(shù)來(lái)處理每個(gè)匹配項(xiàng),并返回替換后的結(jié)果。這允許你根據(jù)匹配到的內(nèi)容動(dòng)態(tài)生成替換值:
def replace_func(match):
    num = int(match.group(0))
    return str(num*2)

pattern = r'\d+'
text = "123423w 2w 3yui 4 5"
result = re.sub(pattern, replace_func, text)
print(result) #246846w 4w 6yui 8 10

2.15 非捕獲組

# 非捕獲組:有時(shí)你可能需要使用括號(hào)進(jìn)行分組,但不需要捕獲該組的內(nèi)容。在這種情況下,可以使用非捕獲組 (?:...):
pattern = r'(?:https?://)?(www\.[A-Za-z]+\.[A-Za-z]+)'
text = "Visit my website at www.example.com"
result = re.findall(pattern, text)
print(result)  # 輸出: ['www.example.com']

2.16 前向引用(匹配重復(fù)子字符串)

# 前向引用:前向引用允許你引用之前已經(jīng)匹配的內(nèi)容。這在匹配重復(fù)的子字符串時(shí)非常有用:
pattern = r'(\w+)\s+\1'  # 匹配重復(fù)的單詞
text = "apple apple banana banana cherry cherry"
result = re.findall(pattern, text)
print(result)  # 輸出: ['apple', 'banana', 'cherry']

2.17 替換中使用命名分組引用

# 替換中使用命名分組引用:可以使用命名分組 (P<name>...) 來(lái)指定一個(gè)命名的捕獲組,并在替換時(shí)使用 \\g<name> 引用該組的內(nèi)容:
pattern = r'(?P<first>\d+)\s+(?P<second>\d+)'
text = "10 20"
result = re.sub(pattern, '\\g<second> \\g<first>', text)
print(result)  # 輸出: "20 10"

2.18 回溯引用

# 回溯引用:使用回溯引用可以匹配重復(fù)的模式,并在替換時(shí)保留其中一個(gè)副本:
pattern = r'(\d+)-\1'  # 匹配連續(xù)重復(fù)的數(shù)字,例如 "22-22"
text = "11-11 22-22 33-33"
result = re.findall(pattern, text)
print(result)  # 輸出: ['11', '22', '33']

2.19 負(fù)向前向引用

# 負(fù)向前向引用:負(fù)向前向引用允許你指定一個(gè)模式,該模式不能在當(dāng)前位置之后出現(xiàn)。可以使用 (?!...) 來(lái)表示負(fù)向前向引用:
pattern = r'\b(?!un)\w+\b'  # 匹配不以 "un" 開(kāi)頭的單詞
text = "happy unhappy apple banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['happy', 'apple', 'banana']

2.20 嵌入條件匹配

# 嵌入條件匹配:使用 (?if:...) 來(lái)實(shí)現(xiàn)條件匹配??梢愿鶕?jù)條件選擇不同的模式進(jìn)行匹配:
pattern = r'(?i)(?:(?<=Mr\.)|(?<=Ms\.)|(?<=Mrs\.))\s\w+'
text = "Hello Mr. Smith, Ms. Johnson, and Mrs. Davis"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Smith', 'Johnson', 'Davis']

2.21 后向引用斷言

# 后向引用斷言:使用 (?<=(...)) 來(lái)實(shí)現(xiàn)后向引用斷言,即在匹配的位置之前必須滿足某個(gè)條件:
pattern = r'\b(\w+)\b(?<=(ing))'  # 匹配以 "ing" 結(jié)尾的單詞中的前面部分
text = "running jumping swimming"
result = re.findall(pattern, text)
print(result)  # 輸出: ['runn', 'jump']

2.22 零寬負(fù)向斷言

# 零寬負(fù)向斷言:使用 (?<!...) 來(lái)實(shí)現(xiàn)零寬負(fù)向斷言,即在當(dāng)前位置之前不能滿足某個(gè)條件:
pattern = r'(?<!un)\b\w+\b'  # 匹配不以 "un" 開(kāi)頭的單詞
text = "happy unhappy apple banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['happy', 'apple', 'banana']

2.23 轉(zhuǎn)義序列匹配非打印字符

# 非打印字符:可以使用轉(zhuǎn)義序列來(lái)匹配非打印字符,如制表符 \t、換行符 \n 等:
pattern = r'abc\tdef\nghi'
text = "abc\tdef\nghi"
result = re.findall(pattern, text)
print(result)  # 輸出: ['abc\tdef\nghi']

2.24 貪婪與非貪婪匹配

# 貪婪與非貪婪匹配:在重復(fù)模式中,默認(rèn)情況下是貪婪匹配,盡可能多地匹配。但可以使用 ? 來(lái)指定非貪婪匹配,盡可能少地匹配:
s = "aaaabaaaa"
pattern = r'a.*a'  # 貪婪匹配模式
match = re.search(pattern, s)
if match:
    print(match.group())  # 輸出:'aaaabaaaa'

s = "aaaabaaaa"
pattern = r'a.*?a'  # 非貪婪匹配模式
match = re.search(pattern, s)
if match:
    print(match.group())  # 輸出:'aaa'

2.25 匯總

# 在Python中,可以使用正則表達(dá)式模塊re來(lái)進(jìn)行字符串的匹配和處理。下面是一些常見(jiàn)的正則處理示例:
# 導(dǎo)入re模塊:
import re
# 匹配字符串中的數(shù)字:
pattern = r'\d+'  # 匹配連續(xù)的數(shù)字
text = "abc123def456ghi"
result = re.findall(pattern, text)
print(result)  # 輸出: ['123', '456']

# 檢查字符串是否符合特定的模式:
pattern = r'^[A-Za-z0-9]+$'  # 檢查是否只包含字母和數(shù)字
text = "abc123"
result = re.match(pattern, text)
if result:
    print("字符串符合要求")
else:
    print("字符串不符合要求")
    
# 替換字符串中的部分內(nèi)容:
pattern = r'\s+'  # 匹配連續(xù)的空格
text = "Hello   World"
new_text = re.sub(pattern, ' ', text) #表示把多個(gè)空格替換成一個(gè)空格
print(new_text)  # 輸出: "Hello World"

# 切分字符串:
pattern = r'[,\s]+'  # 匹配逗號(hào)或空格
text = "apple,banana,orange"
result = re.split(pattern, text)
print(result)  # 輸出: ['apple', 'banana', 'orange']

# 搜索并提取匹配的部分:
pattern = r'\d{3}-\d{4}-\d{4}'  # 匹配電話號(hào)碼的模式
text = "我的電話號(hào)碼是:123-4567-8901"
result = re.search(pattern, text)
if result:
    print(result.group())  # 輸出: '123-4567-8901'
    
# 使用捕獲組提取匹配的部分:
pattern = r'(\d{3})-(\d{4})-(\d{4})'  # 匹配電話號(hào)碼的模式,并使用捕獲組分別提取區(qū)號(hào)、中間號(hào)和尾號(hào)
text = "我的電話號(hào)碼是:123-4567-8901"
result = re.search(pattern, text)
if result:
    area_code = result.group(1)
    middle_number = result.group(2)
    last_number = result.group(3)
    print(area_code, middle_number, last_number)  # 輸出: '123', '4567', '8901'    

# 非貪婪匹配(匹配最短的字符串):
pattern = r'<.*?>'  # 非貪婪匹配尖括號(hào)之間的內(nèi)容
text = "<p>這是一個(gè)段落</p><p>另一個(gè)段落</p>"
result = re.findall(pattern, text)
print(result)  # 輸出: ['<p>', '</p>', '<p>', '</p>']

# 忽略大小寫匹配:
pattern = r'python'
text = "Python is a programming language"
result = re.findall(pattern, text, re.IGNORECASE)
print(result)  # 輸出: ['Python']

# 使用預(yù)定義字符類:
pattern = r'\w+'  # 匹配字母、數(shù)字和下劃線
text = "Hello 123_world*&"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Hello', '123_world']

# 自定義字符類:
pattern = r'[aeiou]'  # 匹配元音字母
text = "apple orange banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['a', 'e', 'o', 'a', 'a']

# 零寬斷言(Lookahead/Lookbehind):零寬斷言允許你在匹配字符串時(shí)指定一些條件,但不會(huì)將這些條件包含在最終的匹配結(jié)果中。例如,可以使用正向零寬斷言來(lái)匹配前面是特定模式的文本:
pattern = r'\w+(?=ing)'  # 匹配以 "ing" 結(jié)尾的單詞的前面部分
text = "running jumping swimming"
result = re.findall(pattern, text)
print(result)  # 輸出: ['runn', 'jump']

# 多行模式:使用多行模式可以處理多行文本,其中 ^ 和 $ 元字符匹配每行的開(kāi)頭和結(jié)尾。通過(guò)傳遞 re.MULTILINE 標(biāo)志給 re.compile() 函數(shù)或使用 re.M 縮寫標(biāo)志來(lái)啟用多行模式:
pattern = r'^\d+$'  # 匹配只包含數(shù)字的行
text = "123\nabc\n456\n789"
result = re.findall(pattern, text, re.MULTILINE)
print(result)  # 輸出: ['123', '456', '789']

# 嵌入式修飾符:可以在正則表達(dá)式中使用嵌入式修飾符來(lái)改變匹配的行為。例如,使用 (?i) 來(lái)忽略大小寫匹配:
pattern = r'(?i)python'  # 忽略大小寫匹配 "python"
text = "Python is a programming language"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Python']

# 替換時(shí)使用回調(diào)函數(shù):使用 re.sub() 函數(shù)進(jìn)行替換時(shí),可以傳遞一個(gè)回調(diào)函數(shù)來(lái)處理每個(gè)匹配項(xiàng),并返回替換后的結(jié)果。這允許你根據(jù)匹配到的內(nèi)容動(dòng)態(tài)生成替換值:
def replace_func(match):
    num = int(match.group(0))
    return str(num*2)

pattern = r'\d+'
text = "123423w 2w 3yui 4 5"
result = re.sub(pattern, replace_func, text)
print(result) #246846w 4w 6yui 8 10

# 非捕獲組:有時(shí)你可能需要使用括號(hào)進(jìn)行分組,但不需要捕獲該組的內(nèi)容。在這種情況下,可以使用非捕獲組 (?:...):
pattern = r'(?:https?://)?(www\.[A-Za-z]+\.[A-Za-z]+)'
text = "Visit my website at www.example.com"
result = re.findall(pattern, text)
print(result)  # 輸出: ['www.example.com']

# 前向引用:前向引用允許你引用之前已經(jīng)匹配的內(nèi)容。這在匹配重復(fù)的子字符串時(shí)非常有用:
pattern = r'(\w+)\s+\1'  # 匹配重復(fù)的單詞
text = "apple apple banana banana cherry cherry"
result = re.findall(pattern, text)
print(result)  # 輸出: ['apple', 'banana', 'cherry']

# 替換中使用命名分組引用:可以使用命名分組 (P<name>...) 來(lái)指定一個(gè)命名的捕獲組,并在替換時(shí)使用 \\g<name> 引用該組的內(nèi)容:
pattern = r'(?P<first>\d+)\s+(?P<second>\d+)'
text = "10 20"
result = re.sub(pattern, '\\g<second> \\g<first>', text)
print(result)  # 輸出: "20 10"

# 回溯引用:使用回溯引用可以匹配重復(fù)的模式,并在替換時(shí)保留其中一個(gè)副本:
pattern = r'(\d+)-\1'  # 匹配連續(xù)重復(fù)的數(shù)字,例如 "22-22"
text = "11-11 22-22 33-33"
result = re.findall(pattern, text)
print(result)  # 輸出: ['11', '22', '33']

# 負(fù)向前向引用:負(fù)向前向引用允許你指定一個(gè)模式,該模式不能在當(dāng)前位置之后出現(xiàn)。可以使用 (?!...) 來(lái)表示負(fù)向前向引用:
pattern = r'\b(?!un)\w+\b'  # 匹配不以 "un" 開(kāi)頭的單詞
text = "happy unhappy apple banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['happy', 'apple', 'banana']

# 嵌入條件匹配:使用 (?if:...) 來(lái)實(shí)現(xiàn)條件匹配。可以根據(jù)條件選擇不同的模式進(jìn)行匹配:
pattern = r'(?i)(?:(?<=Mr\.)|(?<=Ms\.)|(?<=Mrs\.))\s\w+'
text = "Hello Mr. Smith, Ms. Johnson, and Mrs. Davis"
result = re.findall(pattern, text)
print(result)  # 輸出: ['Smith', 'Johnson', 'Davis']

# 后向引用斷言:使用 (?<=(...)) 來(lái)實(shí)現(xiàn)后向引用斷言,即在匹配的位置之前必須滿足某個(gè)條件:
pattern = r'\b(\w+)\b(?<=(ing))'  # 匹配以 "ing" 結(jié)尾的單詞中的前面部分
text = "running jumping swimming"
result = re.findall(pattern, text)
print(result)  # 輸出: ['runn', 'jump']

# 零寬負(fù)向斷言:使用 (?<!...) 來(lái)實(shí)現(xiàn)零寬負(fù)向斷言,即在當(dāng)前位置之前不能滿足某個(gè)條件:
pattern = r'(?<!un)\b\w+\b'  # 匹配不以 "un" 開(kāi)頭的單詞
text = "happy unhappy apple banana"
result = re.findall(pattern, text)
print(result)  # 輸出: ['happy', 'apple', 'banana']

# 非打印字符:可以使用轉(zhuǎn)義序列來(lái)匹配非打印字符,如制表符 \t、換行符 \n 等:
pattern = r'abc\tdef\nghi'
text = "abc\tdef\nghi"
result = re.findall(pattern, text)
print(result)  # 輸出: ['abc\tdef\nghi']

# 貪婪與非貪婪匹配:在重復(fù)模式中,默認(rèn)情況下是貪婪匹配,盡可能多地匹配。但可以使用 ? 來(lái)指定非貪婪匹配,盡可能少地匹配:
s = "aaaabaaaa"
pattern = r'a.*a'  # 貪婪匹配模式
match = re.search(pattern, s)
if match:
    print(match.group())  # 輸出:'aaaabaaaa'

s = "aaaabaaaa"
pattern = r'a.*?a'  # 非貪婪匹配模式
match = re.search(pattern, s)
if match:
    print(match.group())  # 輸出:'aaa'

總結(jié) 

到此這篇關(guān)于Python控制臺(tái)獲取輸入與常見(jiàn)的正則表達(dá)式用法的文章就介紹到這了,更多相關(guān)Python控制臺(tái)獲取輸入與正則表達(dá)式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論