>>> import re >>> s = 'gctagcta' >>> expr = '[gcta]+' >>> re.findall(expr, s) Out[1]: ['gctagcta'] >>> s = 'GGgctagcXta???' >>> re.findall(expr, s) Out[1]: ['gctagc', 'ta'] >>> expr = '[gGcCtTaA]+' >>> re.findall(expr, s) Out[1]: ['GGgctagc', 'ta'] >>> s = '11gctagcxta???' >>> expr = '[a-z0-9_]+' >>> re.findall(expr, s) Out[1]: ['11gctagcxta'] >>> expr = '[0-9]+[a-z0-9_]*' >>> re.findall(expr, s) Out[1]: ['11gctagcxta'] >>> expr = '[a-z]+[a-z0-9_]*' >>> re.findall(expr, s) Out[1]: ['gctagcxta'] >>> expr = '^[a-z]+[a-z0-9_]*$' >>> re.findall(expr, s) Out[1]: [] >>> expr = '^[0-9]+[a-z0-9_]*$' >>> re.findall(expr, s) Out[1]: [] >>> s = '11gctagcxta000' >>> re.findall(expr, s) Out[1]: ['11gctagcxta000'] >>> expr = '^[0-9]+.*[0-9]+$' >>> re.findall(expr, s) Out[1]: ['11gctagcxta000'] >>> s = '11gctag????<><)(^^%%%$##DSFDKUYGFUQYGEYFAScxta000' >>> re.findall(expr, s) Out[1]: ['11gctag????<><)(^^%%%$##DSFDKUYGFUQYGEYFAScxta000'] >>> numPatt = '^[+-]?[0-9]*\.?[0-9]+$' >>> re.findall(numPatt, '1') Out[1]: ['1'] >>> numPatt = '^[+-]?[0-9]*\\.?[0-9]+$' >>> re.findall(numPatt, '1') Out[1]: ['1'] >>> numPatt = r'^[+-]?[0-9]*\.?[0-9]+$' >>> re.findall(numPatt, '1') Out[1]: ['1'] >>> re.findall(numPatt, '-1') Out[1]: ['-1'] >>> re.findall(numPatt, '-1.1') Out[1]: ['-1.1'] >>> re.findall(numPatt, '-.1') Out[1]: ['-.1'] >>> re.findall(numPatt, '+31') Out[1]: ['+31'] >>> re.findall(numPatt, 'a') Out[1]: [] >>> re.findall(numPatt, '--1') Out[1]: [] >>> re.findall(numPatt, '-1..1') Out[1]: [] >>> re.findall(numPatt, '-1.3.1') Out[1]: [] >>> re.findall(numPatt, '-1a') Out[1]: [] >>> numPatt = r'^[+-]?[0-9]*\.?[0-9]+' >>> re.findall(numPatt, '-1a') Out[1]: ['-1'] >>> numPatt = r'^[+-]?[0-9]*\.?[0-9]+$' >>> re.findall(numPatt, '-1a1') Out[1]: [] >>> numPatt = r'[+-]?[0-9]*\.?[0-9]+' >>> re.findall(numPatt, '-1a1') Out[1]: ['-1', '1'] >>> numPatt = r'[+-]?[0-9]*[\.,]?[0-9]+' >>> re.findall(numPatt, '-1.1') Out[1]: ['-1.1'] >>> re.findall(numPatt, '-1,1') Out[1]: ['-1,1'] >>> numPatt = r'^[+-]?\d*\.?\d+$' >>> re.findall(numPatt, '-1.1') Out[1]: ['-1.1'] >>> re.findall('\w+', 'AbcD') Out[1]: ['AbcD'] >>> re.findall('[\w\d]+', 'AbcD') Out[1]: ['AbcD'] >>> re.findall('[\w\d]+', 'AbcD123') Out[1]: ['AbcD123'] >>> re.findall('[\w\d]+', 'AbcD123') Out[1]: ['AbcD123'] >>> numPatt = r'^([+-]?\d*)\.?(\d+)$' >>> re.findall(numPatt, '-1.1') Out[1]: [('-1', '1')] >>> phonePatt = '(\d+)-(\d+)-(\d+)' >>> re.findall(phonePatt, '800-555-1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '800 555 1212') Out[1]: [] >>> phonePatt = '(\d+)-(\d+)-(\d+)' >>> re.findall(phonePatt, '8005551212') Out[1]: [] >>> phonePatt = '(\d+)-?(\d+)-?(\d+)' >>> re.findall(phonePatt, '8005551212') Out[1]: [('80055512', '1', '2')] >>> phonePatt = '(\d\d\d)-?(\d\d\d)-?(\d\d\d\d)' >>> re.findall(phonePatt, '8005551212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '800-555-1212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '(\d{3})-?(\d{3})-?(\d{4})' >>> re.findall(phonePatt, '800-555-1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '8005551212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '(\d{3})_?-?(\d{3})_?-?(\d{4})' >>> re.findall(phonePatt, '800 555 1212') Out[1]: [] >>> phonePatt = '(\d{3})\ -?(\d{3})\ -?(\d{4})' >>> re.findall(phonePatt, '800 555 1212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '(\d{3})\ ?-?(\d{3})\ ?-?(\d{4})' >>> re.findall(phonePatt, '800 555 1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '800-555-1212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '(\d{3})[\.\s-]?(\d{3})[\s\.-]?(\d{4})' >>> re.findall(phonePatt, '800.555.1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '800 555 1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '800-555-1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '8005551212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '\(?(\d{3})[\)\.\s-]?(\d{3})[\s\.-]?(\d{4})' >>> re.findall(phonePatt, '(800)5551212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '(800) 5551212') Out[1]: [] >>> phonePatt = '\(?(\d{3})\)?\s*[\.-]?\s*(\d{3})\s*[\.-]?\s*(\d{4})' >>> re.findall(phonePatt, '(800) 5551212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '(800) 555-1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '(800) 555 - 1212') Out[1]: [('800', '555', '1212')] >>> re.findall(phonePatt, '1-800-555-1212') Out[1]: [('800', '555', '1212')] >>> phonePatt = '\(?\d{3}\)?\s*[\.-]?\s*\d{3}\s*[\.-]?\s*\d{4}' >>> re.findall(phonePatt, '1-800-555-1212') Out[1]: ['800-555-1212']