0
Ich versuche, etwas in Python zu machen, wo Sie die Anzahl der Buchstaben in ein Wort eingeben, dann sucht es in einer Wortliste nach Wörtern mit dieser Menge an Zeichen.Regex in Python Suche
Mein Code:
import sys
import re
def search(pattern):
print("Searching...\n\n")
for i, line in enumerate(open(sys.argv[1])):
for match in re.finditer(pattern, line):
print(match.groups())
print("\n\nFinished.")
while True:
word = ""
put = int(input("Amount of Letters in Word: "))
if put > 25 or put < 3:
print("Invalid amount of letters.")
else:
for n in range(0, put):
word = word + "."
word = "^" + word + "$"
pattern = re.compile(word)
search(pattern)
Ich will es alle Wörter mit der Anzahl der Buchstaben zeigen, dass Sie setzen.
https://i.imgur.com/Kgusvyh.png
Liste der Wörter:
word
1234
okay
0000
asdfg
asdfh
asdgj
Warum kommt es()?
Sie drucken match.groups jedes Mal .. das ist wahrscheinlich ein leeres Tupel drucken. [this] (https://stackoverflow.com/questions/7312020/why-wont-re-groups-give-me-any-ything-for-my-one-correctly-matched-group) könnte der Grund sein – 0TTT0
Nvm, behoben durch Ersetzen von match.groups() durch match.group() – Boobah