Guten Morgen Python-Coder,
nachdem ich die biblothek re importiert habe und damit auf die variable e die methode search referenziert habe, habe ich in eine gruppe noch eine gruppe erstellt r"(?P<text>([a-z]*))".
dann habe ich damit meinen text gesucht.
e = re.search(r"(?P<text>([a-z]*))","abczshdgf")
nachdem ich das gemacht habe, habe ich mit der methode groups nach meiner gruppe gesucht.
statt das der tuppel ("abczshdgf",) kommt, kommt stattdessen der tuppel ("abczshdgf","abczshdgf")
also dass doppelte:
wie lässt sich dieses "Phänomen" erklären ?
so sieht der code aus
>>> e = re.search(r"(?P<text>([a-z]*))","abzhdfghd")
>>> e
<_sre.SRE_Match object at 0x7f3dfc5441c8>
>>> e.groups()
('abzhdfghd', 'abzhdfghd')
wie lässt es sich erklären?
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Willkommen im Forum!
Bitte benutze bei Code zukuenftig die Python- oder zumindest die Code-Tags.
Zu deinem Problem: Du solltest lesen, was die `group`-Methode eines Match Objektes zurueckgibt: http://docs.python.org/2/library/re.htm ... ject.group
Bitte benutze bei Code zukuenftig die Python- oder zumindest die Code-Tags.
Zu deinem Problem: Du solltest lesen, was die `group`-Methode eines Match Objektes zurueckgibt: http://docs.python.org/2/library/re.htm ... ject.group
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
ja aber mein problem ist warum genau zwei objekte zurück gegeben werden und das interessante was ich noch rausgefunden habe ist das.
und wie lässt sich das jetzt erklrären??
Code: Alles auswählen
>>> import re
>>> e = re.search(r"(?P<text>([a-z]*)[0-9]*)","sakjhf3")
>>> e.groups()
('sakjhf3', 'sakjhf')
>>>
@blaxcycy: Ich verstehe die Frage irgendwie nicht. Du hast im regulären Ausdruck genau zwei Gruppen und bekommst von `groups()` genau zwei Ergebnisse. Und das verwundert Dich jetzt‽ Wie viele Ergebnisse hättest Du denn bei zwei Gruppen im Ausdruck erwartet?
Das lässt sich so erklären, dass dieses Verhalten genau so definiert und dokumentiert ist.
Das lässt sich so erklären, dass dieses Verhalten genau so definiert und dokumentiert ist.
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Bitte schau dir die Dokumentation an.blaxcycy hat geschrieben:bitte guckt euch den code an.
Wie BlackJack schon sagte: Du hast 2 Gruppen. Gruppe 0 ist der gesamte Ausdruck und Gruppe 1 die, die du explizit erstellt hast. Wenn die gleich sind, bekommst du natuerlich auch 2 gleiche Gruppenergebnisse.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
cofi hat geschrieben:Bitte schau dir die Dokumentation an.blaxcycy hat geschrieben:bitte guckt euch den code an.
Wie BlackJack schon sagte: Du hast 2 Gruppen. Gruppe 0 ist der gesamte Ausdruck und Gruppe 1 die, die du explizit erstellt hast. Wenn die gleich sind, bekommst du natuerlich auch 2 gleiche Gruppenergebnisse.
danke cofi habe es jetzt verstanden.