タグ

ブックマーク / yukun.info (2)

  • Python: 正規表現の基本 - 最長、最短マッチング - Yukun's Blog

    直前の文字、メタ文字を繰り返しマッチングさせる量指定記号である「*」「+」「?」などは、テキスト中にその繰り返しパターンがマッチする箇所が複数ある場合は、通常最後にマッチした箇所をオブジェクトに記録します。このような最長マッチングに対して、マッチング箇所が複数の場合に最初にマッチした箇所を記録する最短マッチング方法があります。 最短マッチングを行う量指定記号は最長マッチングの記号の末尾に「?」を付けるだけです。すなわち、最長の量指定が「*」「+」「?」であるのに対して、最短マッチングは「*?」「+?」「??」となります。それでは、以下のコードで確認してみましょう。 ソースコード # coding: Shift_JIS import re # 正規表現を扱うモジュールのインポート # 正規表現のチェックプリント用の関数 def PrintRegMatch(pat, txt): # 書式: r

    Python: 正規表現の基本 - 最長、最短マッチング - Yukun's Blog
  • Python: コマンドライン引数の取得 – sys.argv変数

    コマンドラインで与える引数によってプログラムの挙動を変えたいという場面はよくあります。Python ではコマンドライン引数は sys モジュールの argv 属性に文字列を要素とするリストとして格納されています。そして、リストの先頭要素(sys.argv[0])はスクリプトファイル名となっています。 ソースコード # coding: Shift_JIS import sys # モジュール属性 argv を取得するため argvs = sys.argv # コマンドライン引数を格納したリストの取得 argc = len(argvs) # 引数の個数 # デバッグプリント print argvs print argc print if (argc != 2): # 引数が足りない場合は、その旨を表示 print 'Usage: # python %s filename' % argvs[0]

    Python: コマンドライン引数の取得 – sys.argv変数
  • 1