Python 中的 sub() 函式

Python 中的 sub() 函式是一個非常有用的函式,它可以讓你對字串進行替換,替換的方式可以是指定的字串,也可以是正則表達式。

sub() 函式的基本用法

sub() 函式的基本用法是:

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

其中,pattern 是要搜尋的字串或正則表達式,repl 是替換的字串,string 是要被搜尋的字串,count 是替換的次數,flags 是標記,可以指定搜尋的方式。

範例

假設我們有一個字串:

s = 'Hello, world!'

我們可以使用 sub() 函式將其中的 ‘world’ 替換為 ‘Python’:

import re

s = re.sub('world', 'Python', s)
print(s)

執行結果:

Hello, Python!

更多用法

sub() 函式還可以接受一個函式作為參數,該函式接受一個參數,並返回一個字串,該字串將會替換原字串中的匹配項。

舉個例子,假設我們有一個字串:

s = 'Hello, world!'

我們可以使用 sub() 函式將其中的 ‘world’ 替換為 ‘Python’:

import re

def repl(m):
    return 'Python'

s = re.sub('world', repl, s)
print(s)

執行結果:

Hello, Python!

正則表達式

sub() 函式也可以接受正則表達式作為參數,例如:

import re

s = 'Hello, world!'
s = re.sub(r'\w+', 'Python', s)
print(s)

執行結果:

Python, Python!

總結

Python 中的 sub() 函式可以讓你對字串進行替換,替換的方式可以是指定的字串,也可以是正則表達式,甚至可以接受一個函式作為參數,該函式接受一個參數,並返回一個字串,該字串將會替換原字串中的匹配項。sub() 函式的使用非常簡單,但是卻可以為你解決很多字串替換的問題,值得一試。

Categorized in:

Tagged in: