Пример #1
0
    def getQryContains(self):

        file = open(self._qry, "r")
        collectionOfQuery = dict()
        lastLine = 0
        for line in file:
            if (line.startswith(".I")):
                query = Query()
                if lastLine != 0:
                    query.I = lastLine
                    lastLine = 0
                else:
                    query.I = int(line[2:].strip())

            elif (line.startswith(".W")):
                isReading = True
                w = ""
                while isReading:
                    ligne = file.readline().strip()
                    if (ligne.startswith(".N") or ligne.startswith(".A")
                            or ligne.startswith(".B")):
                        isReading = False
                    elif (ligne.startswith(".I")):
                        isReading = False
                        lastLine = int(ligne[2:].strip())
                    else:
                        w += ligne
                        w += " "
                query.W = w
                collectionOfQuery[query.I] = query
        file.close()

        return collectionOfQuery
Пример #2
0
    def getRelContains(self):

        file = open(self._rel, "r")
        collectionOfRel = dict()
        isFirstLine = True
        listeIdoc = []

        for line in file:

            line = line.strip()
            elLine = re.split(
                r'[ \t]+', line)  # regex qui split les espaces et tabulations

            if isFirstLine:
                query = Query()
                query.I = int(
                    elLine[0])  # premier élément de la liste = id requete
                listeIdoc.append(
                    int(elLine[1])
                )  # deuxième élément de la liste = id doc pertinent pour la requete
                isFirstLine = False

            elif query.I == int(elLine[0]):
                listeIdoc.append(int(elLine[1]))

            else:
                query.setIdoc(listeIdoc)
                collectionOfRel[query.I] = query
                listeIdoc = []
                query = Query()
                query.I = int(elLine[0])
                listeIdoc.append(int(elLine[1]))
        query.setIdoc(listeIdoc)
        collectionOfRel[query.I] = query

        file.close()
        return collectionOfRel