python regex error: NameError: name 're' is not defined
<p>I have some code that reads an infofile and extracts information using python's regex and writes it into a new file. When I test this portion of the code individually in its own script, it works perfectly. However when I add it to  the rest of my code, I get this error:</p>

<pre><code>NameError: name 're' is not defined
</code></pre>

<p>Below is my entire code. The regex portion is obvious (all the <code>re.search</code> commands):</p>

<pre><code>import glob
import subprocess
import os
import datetime
import matplotlib.pyplot as plt 
import csv
import re
import ntpath

x = open('data.txt', 'w')
m = open('graphing_data.txt', 'w')

ckopuspath= '/Volumes/DAVIS/sfit-ckopus/ckopus'
command_init = 'sfit4Layer0.py -bv5 -fh'

subprocess.call(command_init.split(), shell=False)


with open('/Volumes/DAVIS/calpy_em27_neu/spectra_out_demo/info.txt', 'rt') as infofile: # the info.txt file created by CALPY
    for count, line in enumerate(infofile): 
        with open('\\_spec_final.t15', 'w') as t:
            lat = re.search('Latitude of location:\s*([^;]+)', line, re.IGNORECASE).group(0)
            lat = lat.split()
            lat = lat[3]
            lat = float(lat)

            lon = re.search('Longitude of location:\s*([^;]+)', line, re.IGNORECASE).group(0)
            lon = lon.split()
            lon = lon[3]
            lon = float(lon)

            date = re.search('Time of measurement \(UTC\): ([^;]+)', line).group(0) 
            date = date.split()

            yeardate = date[4]
            yeardate = yeardate.split('-')
            year = int(yeardate[0])
            month = int(yeardate[1])
            day = int(yeardate[2])

            time = date[5]    
            time = time.split(':')
            hour = int(time[0])
            minute = int(time[1])
            second = float(time[2])    

            dur = re.search('Duration of measurement \[s\]: ([^;]+)', line).group(0)
            dur = dur.split()
            dur = float(dur[4])

            numpoints = re.search('Number of values of one scan:\s*([^;]+)', line, re.IGNORECASE).group(0)
            numpoints = numpoints.split()
            numpoints = float(numpoints[6])

            fov = re.search('semi FOV \[rad\] :\s*([^;]+)', line, re.IGNORECASE).group(0)
            fov = fov.split()
            fov = fov[3]
            fov = float(fov[1:])

            sza = re.search('sun Azimuth \[deg\]:\s*([^;]+)', line, re.IGNORECASE).group(0)
            sza = sza.split()
            sza = float(sza[3])

            snr = 0.0000
            roe = 6396.2
            res = 0.5000

            lowwav = re.search('first wavenumber:\s*([^;]+)', line, re.IGNORECASE).group(0)
            lowwav = lowwav.split()
            lowwav = float(lowwav[2])

            highwav = re.search('last wavenumber:\s*([^;]+)', line, re.IGNORECASE).group(0)
            highwav = highwav.split()
            highwav = float(highwav[2])

            spacebw = (highwav - lowwav)/ numpoints


            d = datetime.datetime(year, month, day, hour, minute, second)
            t.write('{:&gt;12.5f}{:&gt;12.5f}{:&gt;12.5f}{:&gt;12.5f}{:&gt;8.1f}'.format(sza,roe,lat,lon,snr)) # line 1
            t.write("\n")
            t.write('{:&gt;10d}{:&gt;5d}{:&gt;5d}{:&gt;5d}{:&gt;5d}{:&gt;5d}'.format(year,month,day,hour,minute,second)) # line 2
            t.write("\n")
            t.write( ('{:%Y/%m/%d %H:%M:%S}'.format(d)) + "UT Solar Azimuth:" + ('{:&gt;6.3f}'.format(sza)) + " Resolution:" + ('{:&gt;6.4f}'.format(res)) + " Duration:" + ('{:&gt;6.2f}'.format(dur))) # line 3
            t.write("\n")
            t.write('{:&gt;21.13f}{:&gt;26.13f}{:&gt;24.17e}{:&gt;12f}'.format(lowwav,highwav,spacebw,numpoints)) # line 4
            t.write("\n")

            calpy_path = '/Volumes/DAVIS/calpy_em27_neu/spectra_out_demo/140803/*' # the CALPY output files!
            files1 = glob.glob(calpy_path)
            with open(files1[count], 'r') as g:
                for line in g:
                    wave_no, intensity = [float(item) for item in line.split()]
                    if lowwav &lt;= wave_no &lt;= highwav:
                        t.write(str(intensity) + '\n')

##########################                

            subprocess.call(['sfit4Layer0.py', '-bv5', '-fs'],shell=False) #I think this writes the summary file

# this retrieves info from summary and outputs it into data.txt (for readability)
# and graphing_data.txt (for graphing)
            road = '/Volumes/DAVIS/calpy_em27_neu/spectra_out_demo/sfit4_trial' # path to summary file that is produced - not sure where this is usually*        
            for infile in glob.glob(os.path.join(road, 'summary*')):
                lines = open(infile, 'r').readlines()
                #extract info from summary
                x.write('{0} {1} {2} {3} {4}'.format(fitrms, chi2, dofsall, dofstrg, iter))
                x.write('\n')

x.close()
m.close()
</code></pre>