1. ホーム
  2. python

[解決済み] 文字列中の非英数字をすべて置換する

2022-09-19 20:59:16

質問

ある文字列で、(a-z や 0-9) のような標準文字や数字でない文字をアスタリスクに置き換えたいのですが、どうすればよいでしょうか。例えば、 "h^&ell`.,|o w]{+orld" は "h*ell*o*w*orld" に置き換わります。ただし、"^&"のような複数の文字は、1つのアスタリスクに置き換えられます。どうすればいいのでしょうか?

どのように解決するのですか?

Regexで解決!

import re

s = re.sub('[^0-9a-zA-Z]+', '*', s)

>>> re.sub('[^0-9a-zA-Z]+', '*', 'h^&ell`.,|o w]{+orld')
'h*ell*o*w*orld'