INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Reguläre Ausdrücke mit 'Muster suchen'



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

08.08.2012, 11:15
Beitrag #1

A_Bachmann Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Aug 2012

2013
-
DE


Deutschland
Reguläre Ausdrücke mit 'Muster suchen'
Hallihallo,

ich habe hier ein Labview 2011 (32 Bit). Aus einem String möchte ich mittels 'Muster suchen' einen bestimmten Teil bekommen. Leider scheint es aber meine regulären Ausdrücke nicht so zu interpretieren, wie ich mir das vorstelle.

Konkret sieht das so aus:
- Ich habe einen String (das ist die Antwort des FTP-Kommandos PASV): "227 Entering Passive Mode (123,124,125,126,204,112)."
- daraus möchte ich die letzten beiden Zahlen haben, also die 204 und die 112

Also nahm ich mir 'Muster suchen' zur Hand, habe den String-Eingang mit meinem String verknüpft und als regulären Ausdruck erstmal [0-9]+,[0-9]+[^,] genommen. Das sollte mir ja "204,112" zurückliefern. Leider bekomme ich da aber unverständlicherweise "123,124" (also die ersten beiden Zahlengruppen) heraus. Ich habe doch aber explizit in meinem Regexp gesagt, dass kein Komma mehr folgen soll. Wieso kommt dann also da trotzdem die erste Zahlengruppe heraus?

Darauf aufbauen gleich noch eine Frage: [0-9]+ ist ja zur Beschreibung einer maximal drei Stellen großen Zahl nicht ganz korrekt, normalerweise würde ich da als Regexp \d{1,3} schreiben. Doch das wird gar nicht von 'Muster suchen' erkannt, da wird immer gar nichts gefunden. Wieso?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.08.2012, 11:57
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: Reguläre Ausdrücke mit 'Muster suchen'
Ich hätte es so gemacht:

11.0 .vi  Werte suchen.vi (Größe: 8,25 KB / Downloads: 337)

Die ganzen Formatierungen und Abkürzungen blicke ich glaub' nie. Big Grin

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.08.2012, 12:24
Beitrag #3

M Nussbaumer Offline
Zarathustra
****


Beiträge: 654
Registriert seit: Sep 2009

2009 SP1
2009
EN

6300
Schweiz
RE: Reguläre Ausdrücke mit 'Muster suchen'

Akzeptierte Lösung

(08.08.2012 11:15 )A_Bachmann schrieb:  Hallihallo,

ich habe hier ein Labview 2011 (32 Bit). Aus einem String möchte ich mittels 'Muster suchen' einen bestimmten Teil bekommen. Leider scheint es aber meine regulären Ausdrücke nicht so zu interpretieren, wie ich mir das vorstelle.

Konkret sieht das so aus:
- Ich habe einen String (das ist die Antwort des FTP-Kommandos PASV): "227 Entering Passive Mode (123,124,125,126,204,112)."
- daraus möchte ich die letzten beiden Zahlen haben, also die 204 und die 112

Also nahm ich mir 'Muster suchen' zur Hand, habe den String-Eingang mit meinem String verknüpft und als regulären Ausdruck erstmal [0-9]+,[0-9]+[^,] genommen. Das sollte mir ja "204,112" zurückliefern. Leider bekomme ich da aber unverständlicherweise "123,124" (also die ersten beiden Zahlengruppen) heraus. Ich habe doch aber explizit in meinem Regexp gesagt, dass kein Komma mehr folgen soll. Wieso kommt dann also da trotzdem die erste Zahlengruppe heraus?

Darauf aufbauen gleich noch eine Frage: [0-9]+ ist ja zur Beschreibung einer maximal drei Stellen großen Zahl nicht ganz korrekt, normalerweise würde ich da als Regexp \d{1,3} schreiben. Doch das wird gar nicht von 'Muster suchen' erkannt, da wird immer gar nichts gefunden. Wieso?

Du musst das VI "Match Regular Expression" in der String-Palette verwenden anstatt das "Match Pattern".
Dann klappts auch wie gewünschtWink

Gruss Marc
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.08.2012, 12:48
Beitrag #4

A_Bachmann Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Aug 2012

2013
-
DE


Deutschland
RE: Reguläre Ausdrücke mit 'Muster suchen'
(08.08.2012 11:57 )Y-P schrieb:  Ich hätte es so gemacht:

Die ganzen Formatierungen und Abkürzungen blicke ich glaub' nie. Big Grin

Gruß Markus
Danke für die Idee mit dem Tabellenstring, damit klappt das ja auch. Daran habe ich gar nicht gedacht. Smile

(08.08.2012 12:24 )M Nussbaumer schrieb:  Du musst das VI "Match Regular Expression" in der String-Palette verwenden anstatt das "Match Pattern".
Dann klappts auch wie gewünschtWink

Gruss Marc
Damit klappt es, danke. Aber warum? Laut der Hilfe kann ich bei beiden VIs reguläre Ausdrücke benutzen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.08.2012, 13:28
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Reguläre Ausdrücke mit 'Muster suchen'

Akzeptierte Lösung

(08.08.2012 12:48 )A_Bachmann schrieb:  Damit klappt es, danke. Aber warum? Laut der Hilfe kann ich bei beiden VIs reguläre Ausdrücke benutzen.
Zitat aus der erweiterten Hilfe von Match Pattern:
Code:
The Match Pattern function gives you fewer options for matching strings but performs more quickly than the Match Regular Expression function. For example, the Match Pattern function does not support the parenthesis or vertical bar (|) characters.
Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.08.2012, 14:29
Beitrag #6

A_Bachmann Offline
LVF-Grünschnabel
*


Beiträge: 17
Registriert seit: Aug 2012

2013
-
DE


Deutschland
RE: Reguläre Ausdrücke mit 'Muster suchen'
Ok, also ist es wohl eher so, dass ich mit 'Muster suchen' nur Basic RE nutzen kann und mit 'Regulären Ausdruck suchen' dann auch Extended REs? Das hätte NI aber ruhig auch einfach so direkt in die Hilfetexte schreiben können, da wüsste gleich jeder, was gemeint ist... Naja gut ok. Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Ansprechendes Design des Frontpanels | Muster in Hintergrund einfügen dulfried 3 4.288 23.08.2017 17:45
Letzter Beitrag: GerdW
  String mit IP-Muster vergleichen? C.Maier 4 5.056 08.11.2016 08:29
Letzter Beitrag: C.Maier
  Erzeuger-Verbraucher Muster Abbruch Verbraucherschleife mit Abarbeitung der Queue lumaxo 5 6.679 12.02.2015 13:55
Letzter Beitrag: Lucki
  Muster suchen, RegEx Ausdruck String innerhalb Klammern dali4u 2 5.649 23.09.2014 10:30
Letzter Beitrag: dali4u
  Muster suchen in String Hubert R. 2 4.982 27.01.2014 12:44
Letzter Beitrag: Hubert R.
  Match Patter (Muster suchen) funktioniert nicht immer HIMI 4 4.195 15.10.2013 09:51
Letzter Beitrag: HIMI

Gehe zu: