Python での正規表現を使用したテキスト置換の例

Y2J
リリース: 2017-04-21 15:06:14
オリジナル
1582 人が閲覧しました

この記事では、Python で正規表現を使用してテキスト置換を実現する方法を主に紹介し、正規表現を使用してテキスト置換を実装するための Python の具体的な手順と関連する使用上の注意事項を例の形で紹介します。 2D ある意味、クライアントプログラミングは素材の整理です。そのため、画像素材の整理には、Win/Linux/Mac を問わず、シンプルな操作環境を持つ Python が最適です


。適用シナリオ

:

① フォルダー内にない場合は、フォルダー名を先頭に挿入します

② すべてのファイル名にプレフィックスを追加します

コードを見てください:

# encoding: UTF-8
import re
# 将正则表达式编译成Pattern对象
p = re.compile(r&#39;(?P<folder>(\w+/)*)(?P<filename>\w+\.png)&#39;)
# 使用Pattern匹配文本,获得匹配结果,无法匹配时将返回None
#match = pattern.match(&#39;<key>xxx/duobaojiemian_L/yangpizi.png</key>&#39;)
the_str = """<key>XXXX/duobaojiemian2222_L/duobaojiemian_L/yangpizi.png</key>
 <key>yangpizi2.png</key>
 <key>yangpizi3.png</key> """
for m in p.finditer(the_str):
 # 使用Match获得分组信息
 print m.groupdict()
print &#39;-------------------------------&#39;
#f = lambda m: m.group().find(&#39;XXXX/&#39;) == -1 and &#39;XXXX/&#39;+m.group() or m.group()
def f(m):
 s = m.group()
 return s.find(&#39;XXXX/&#39;) == -1 and &#39;XXXX/&#39;+s or s
def f2(m2):
 d = m2.groupdict()
 return d[&#39;folder&#39;]+&#39;the_&#39;+d[&#39;filename&#39;]
print p.sub(f2, the_str)
ログイン後にコピー

正規表現について があります式

①で説明する必要があるいくつかのこと。Python の正規表現のキャプチャをグループ化する必要がある場合は、この構文 (?P 一致する正規表現) を使用してコンパイルします。正規表現の式を返し、オブジェクト

③を返します。p.finditer は、一致するすべてのイテレータ

④を返します。p.sub は、一致したものをコールバック関数に渡し、テキストを戻り値

⑤ に置き換えます。グループに名前を付け、対応する値を取得できます

以上がPython での正規表現を使用したテキスト置換の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!