テキストファイルを開いて文字列を探していますNum_row_lables
。の値Num_row_labels
が10以上の場合は、ファイルの名前を出力します。
次の例では、私のテキストファイルtest.mrk
に次の形式のテキストが含まれています。Ps、私のテキストファイルには。がありませんNum_row_labels >= 10
。常に「equal to
」があります。
Format= { Window_Type="Tabular", Tabular= { Num_row_labels=10 } }
teststring
そこで、これから見るパターンを保持する変数を作成しました。次に、ファイルを開きました。
次に、を使用して、 matchという変数re
を取得しました。Num_row_labels=10
on matchを使用group()
して、必要なしきい値数を抽出し、を使用してint()
変換しましたstring to int
。
私の目的は、find/print
テキストファイルのNum_row_labels = 10または#が10より大きい場合に、ファイルの名前とともにNum_row_labelsの値までテキストファイルを読み取ることです。
これが私のテストコードです:
import os
import os.path
import re
teststring = """Format= { Window_Type="Tabular", Tabular= { Num_row_labels=10 } }"""
fname = "E:\MyUsers\ssbc\test.mrk"
fo = open(fname, "r")
match = re.search('Num_row_labels=(\d+)', teststring)
tnum = int(match.group(1))
if(tnum>=10):
print(fname)
開いているファイルのコンテンツで一致するものを検索し、tnum> = 10の条件を確認していることを確認するにはどうすればよいですか?私のテストコードは、最後の4行だけに基づいてファイル名を出力するだけです。検索がテキストファイルのコンテンツ全体で行われることを確認したいと思います。