Prijavi se z GoogleID

» »

mysql, permutacije in besede v slovarju

mysql, permutacije in besede v slovarju

Hayabusa ::

Torej rad bi v mysql primerjal permutacije nekega niza črk, z onimi, ki so slovarju (cross checking).

vse mogoče permutacije recimo ustvariš tu:
http://users.telenet.be/vdmoortel/dirk/...

Za primer sem vzel besedo "forum", 120 permutacij, jih izvoziš v txt datoteko, uvoziš v mysql, sedaj bi se rad znebil vseh tistih, ki jih ni v Slo slovarju (tudi uvozil iz txt v mysql bazo).Besede so v obeh txt zapisane ena pod drugo:
forum
formu
fourm


Bi se to dalo ?

Če ne, predlagajte kakšno alternativo.
  • spremenilo: Hayabusa ()

_Dormage_ ::

Imaš dva txt fajla eden so permutacije, drugi je slovar.
Hočeš tretji txt fajl, ki je presek obeh?

Če maš txt fajle ne vem kaj ima mysql veze?
Verjetno nisem razumel.

Hayabusa ::

Hočeš tretji txt fajl, ki je presek obeh?

Da.

mysql je dober v smislu različnih operacij z besedami/številkami, zato sem ga omenil.

_Dormage_ ::

Kaj te omejuje, da ne uporabiš kar brute-force?
Sej, če prav razumem ta file enkrat sestaviš in konc.

Hayabusa ::

Kaj te omejuje, da ne uporabiš kar brute-force?

Ne razumem kako naj bi to storil.

_Dormage_ ::

V poljubnem jeziku (najlazje skriptnem) odpreš obe datoteki.
Vzameš besedo v datoteki A in pogledaš, če se nahaja v datoteki B tako, da pregledaš celo datoteko B.
Če najdeš to besedo tudi v datoteki B jo napišeš v datoteko C.
To ponavljaš za vse besede v datoteki A dokler ne prideš do konca.
Na koncu bodo v datoteki C le tiste besede, ki so v preseku datotek A in B.

Hayabusa ::

_Dormage_ ::

Ja točno to :)

Hayabusa ::

file1 = open("file1.txt", "r")
file2 = open("file2.txt", "r")
file3 = open("file3.txt", "a")
file1.seek(0,0)
file2.seek(0,0)
list1 = file1.readlines()
list2 = file2.readlines()
for i in list1:
    for j in list2:
        if i == j:
            file3.write("FILE 1:",i)
            file3.write("FILE 2:",j)

Imam obe datoteki, Python 3.3 na winsih,

ko poženem *.py mi javi tole napako:

Traceback (most recent call last):
File "C:\run0.py", line 11, in < module >
file3.write("FILE 1:",i)
TypeError: write() takes exactly 1 argument (2 given)

Hayabusa ::

Uspel rešiti problem s pomočjo awk-a
http://awk.freeshell.org/ComparingTwoFi...
awk "FNR==NR {arr[$0];next} $1 in arr" file1 file2

Greg91 ::

Problem je, da v enajsti vrstici podajaš dejansko dva parametra funkciji write (ti si vrjetno želel z vejico lepit dva stringa skupaj). Tako mora delati:
file3.write("FILE 1: " + i)
file3.write("FILE 2 :" + j)

Hayabusa ::

Samo što nije, pravijo Srbi 8-):


uporabljena koda:
file1 = open("file1.txt", "r")
file2 = open("file2.txt", "r")
file3 = open("file3.txt", "a")
file1.seek(0,0)
file2.seek(0,0)
list1 = file1.readlines()
list2 = file2.readlines()
for i in list1:
    for j in list2:
        if i == j:
file3.write("FILE 1: " + i)
file3.write("FILE 2 :" + j)



btw, sedaj sem malo testiral awk in mi ne najde besede z vsaj enim šumnikom (iskano besedo imam v slovarju, file2), besede brez šumnikov iz permutacij najde.

Zgodovina sprememb…

  • spremenilo: Hayabusa ()

root987 ::

Write daj v block, stringe se pa združuje z +, ali še bolje

fileobj.write("Found: %s" % (i,))


Zakaj sploh maš dvakrat write? Saj če si enkrat našel, je že to to?
"Myths which are believed in tend to become true."
--- George Orwell

Hayabusa ::

Saj če si enkrat našel, je že to to?

Ne mene spraševati, jaz samo kopiram kodo, ki bi jo rad spravil v življenje od nekoga drugega https://slo-tech.com/forum/t557405/p392... .


Sem naredil workaound hack v awku tako, da sem v slovarju odstranil šumnike (č -> c, š -> s , ž -> z), tudi permutacije sem kreiral brez njih.

Zgodovina sprememb…

  • spremenilo: Hayabusa ()

Greg91 ::

To poženi:
file1 = open("file1.txt", "r")
file2 = open("file2.txt", "r")
file3 = open("file3.txt", "a")
file1.seek(0,0)
file2.seek(0,0)
list1 = file1.readlines()
list2 = file2.readlines()
for i in list1:
    for j in list2:
        if i == j:
			file3.write("FILE 1: " + i)
			file3.write("FILE 2: " + j)

Zgodovina sprememb…

  • spremenil: Greg91 ()

Hayabusa ::

Težave s šumniki (kot tudi če dam besede brez njih):


cp1250.py

Zgodovina sprememb…

  • spremenilo: Hayabusa ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

kopiranje dela teksta iz večih datotek

Oddelek: Programska oprema
10378 (219) kerrigh
»

[c#] iz class v class

Oddelek: Programiranje
5435 (309) darkolord
»

[c#] shrani text, tabele, slike

Oddelek: Programiranje
25970 (576) klemen93
»

UNIX, mv, muvanje fajlse

Oddelek: Pomoč in nasveti
11863 (729) BigWhale
»

PHP - kako dobiti host

Oddelek: Programiranje
9710 (590) pac3k

Več podobnih tem