0

正規表現を使用して .csv ファイルを検索し、特定の文字列を検索する python スクリプトを作成しようとしています。

      for csv in glob.glob('C:\\Upload\\Uploads\\.csv'):
l = re.compile('[Longitude] + [Latitude]*', re.IGNORECASE)
f = re.match('[Longitude] + [Latitude]*', bFile, re.IGNORECASE)

    for csv in glob.glob('C:\\Upload\\Uploads\\.csv'):
m = re.compile('[!]+[@]+[#]+[$]+[%]+[^]+[&]+[*]+[(]+[)]+[{]+[}]',re.IGNORECASE)
n = re.search('[!]+[@]+[#]+[$]+[%]+[^]+[&]+^*]+[{]+[}]',bFile, re.IGNORECASE)

bFile 変数は、検索対象の .csv ファイルです。

経度と緯度をフィールド名として検索し、.csv で 2 番目の式の文字を検索しようとしています。.csv ファイルを正確に検索する式を実際に取得するのに問題があります。

どんな助けでも大歓迎です、ありがとう。

4

1 に答える 1

0

もう少しシンプルなものはどうですか?

# iterates over every csv file
for csv in glob.glob('C:\\Upload\\Uploads\\.csv'):
    # opens the file
    with open(csv, "r") as csv_reader:
        # iterates over every line in the file
        for line in csv_reader:
            # turns each line into a list of elements
            elements_in_line = line.strip("\r\n").split(",")
            # iterates over each element of each line of each file
            for element in elements_in_line:
                #you can do your code or what you want here.

あなたの質問は理解するのが難しいですが、具体的には、正確に何を探しているのか-正規表現があまり見栄えがよくないためです。これはあなたを助けることができるかもしれません。検索する反復のレベルを決定できます。たとえば、正規表現を使用する必要さえありません。

if "longitude" in element:

うまくいくでしょう。

于 2012-08-20T11:58:16.907 に答える