Subversion Repositories navi

Rev

Rev 60 | Rev 62 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
56 szabot 1
#!/usr/bin/python
2
# -*- coding: utf-8 -*-
3
 
4
import re
5
import dbconnector
6
 
7
infixes0 = ur"(?P<in0>(?:awn|eyk|us|äp)?)"
8
infixes1 = ur"(?P<in1>(?:ìyev|iyev|ìmìy|arm|asy|ilv|ìmv|imv|ìrm|irv|ìsy|aly|ary|ìly|ìry|ìlm|alm|am|ay|er|ìm|iv|ìy|ol)?)"
9
infixes2 = ur"(?P<in2>(?:äng|ats|eiy|ei|uy)?)"
10
#prefixesn = ur"(?P<pre>(?:(?:fì|tsa)?(?:me|pxe|ay|fra)?|(?:fay)?|(?:tsay)?)(?:fne)?(?:tì|sä)?"
11
 
12
def parseword(wordin):
13
    wordfound = [0, u"", u"", u""]
14
    wordre = None
15
    ret = [wordfound, u"", u"", u""]
16
    for word in dbconnector.getnavilist():
60 szabot 17
        wordre = u" ".join(ur"(?:.*?)" + x + ur"(?:.*?)" for x in word[2].split(u" ")).replace(u"<0><1>", infixes0 + infixes1).replace(u"<2>",infixes2)
56 szabot 18
        rem = re.match(wordre,wordin)
19
        if rem:
20
            wordfound = word
61 szabot 21
            try:
22
                ret = [wordfound, rem.group("in0"), rem.group("in1"), rem.group("in2")]
23
            except:
24
                ret = [wordfound, u"", u"", u""]
56 szabot 25
            break
26
    return ret