chiark / gitweb /
I'm sure I've done something since I remembered to commit...
[familyTree.git] / familyTree / findYear.py
1 #!/usr/bin/python
2
3 import re
4
5 def find_year(date):
6         if date == 'present':
7                 return 1000000
8
9         dates = date.split('/')
10
11         if len(dates)>0:
12                 year = dates[-1]
13         else:
14                 year = 0
15
16         parts = year.split('-')
17
18         matches = re.search('[0-9]{1,4}',parts[0])
19         if matches==None:
20                 year =  0
21         else:
22                 year =  matches.group(0)
23
24         return year
25
26
27 def find_month(date):
28
29         dates = date.split('/')
30         if len(dates)==3:
31                 return dates[1]
32         if len(dates)==2:
33                 parts = date.split('-')
34                 matches = re.search('[0-9]{1,2}',parts[0])
35                 if matches == None:
36                         return 0
37                 else: 
38                         return matches.group(0)
39         else:
40                 return 0
41
42 def find_day(date):
43         dates = date.split('/')
44         if len(dates)==3:
45                 parts = dates[0].split('-')
46                 matches = re.search('[0-9]{1,2}',parts[0])
47                 if matches == None:
48                         return 0
49                 else:
50                         return matches.group(0)
51
52         else:
53                 return 0
54
55 def reverse_order(date):
56
57         year = find_year(date)
58         if year==0:
59                 year = '0000'
60         month = find_month(date)
61         if month==0:
62                 month='00'
63         day = find_day(date)
64         if day==0:
65                 day = '00'
66
67         return '%s-%s-%s' %(year,month,day)