Pythonのテキストエディタ:re.sub -------テキストを読み、指定された文字の除去を保存

さて、このような使命があります:
私たちは次のように読み込むテキストを、持っています:

 

そこに、このws0012cs3d4。図3は、この!?いくつかのテキストZです...

 

など英語の句読点、英語の文字、数字、文字、中国、スペース、内のテキストがありますが、今、私たちはラベル(ws0012cs3d4)の前に、ラインによってテキスト行を読む必要があるだけで中国語のテキストが含まれるようにテキストフィルタの後、変更されないままデータから、もう一度一緒に数字や文字を入れて、次の形式:

ここではいくつかのテキストws0012cs3d4です

  

新しいファイルに保存されました。

コードは以下の通りであります:

 

# - * -コーディング:UTF-8 - * - 
 '「' 
 、TXTファイルを取得し
 、それぞれのtxtに、すべての数字symbles、タブ、韻律を削除し、新しいTXTに保存します。
 MTTSでも使用が新しいファイルにtxtを保存
 这里有两个函数、分别实现了不同功能、可以随意使用
 '' ' 
 
 unicode_literalsが__future__インポートから
 再インポートする
 インポートOS 
 
 ' '' 
 删除文本中的奇数行
 '」を' 
 DEF remove_lines(txtfile):
 ライターとしてのリーダとしてオープン(txtfile)と、オープン( 'NEWFILE.TXT'、 'W') 列挙(リーダー)のインデックス、ラインの
         場合、インデックス%2 == 0:
             writer.write (ライン)
 リターン'NEWFILE.TXT' 

  
 DEFの_txt_preprocess (txtfile):
     リーダーとしてオープン(txtfile)と、オープン(」
         【reader.readlinesにおけるXためx.strip()()] = txtlines 
         txtlinesにおけるラインについて:
             NUM、空間分割Geqieセグメンテーションによって一度だけ取らTXT = line.split( ''、1。)#ライン
             TXT = re.sub( '[,,, :;?!... ... "" #0-9 AZ AZ-ZA-Z]'、 ''、TXT)#[] すべてのシンボルをフィルタリングしたいです、最後の二つは、フル幅の場合、英語の文字である
             スペースは= '' 
             changeline = '\ N-' 
             TMP = NUM +スペース+ TXT + changeline#再組み立てテキスト
             writer.Write(TMP)
 
 
 
 
 IF __name__ == '__main__':
     インポートはargparse 
     = Parserの引数を。parse_args() 
     パーサ= argparse.ArgumentParser(
         説明=「マーリンのために標識するmandarin_txtとWAVのための変換を。「) 
     parser.add_argument(
         「txtfile」、
         ヘルプ= 
         「フルパス各行がnumとTXTを含有するtxtfileする(空白で区切ら)」
 
     _txt_preprocess(args.txtfile)

  

 

おすすめ

転載: www.cnblogs.com/gstblog/p/11649165.html