spawny2407
Goto Top

Problem bei der Erstellung eines Regulären Ausdruckes

Hallo liebe Gemeinde,

habe ein nicht endendes Problem.
Da ich auf dem Gebiet der Regulären Ausdrucke sehr neu bin, diese aber in einem Script benötige wende ich mich nun an euch.

Folgende Werte habe ich:
z.B: "f<sdglfagsdfadfasdfKunden-Nr.: 00000z00glj234h5g24l35"
oder "f<sdglfagsdffKunde00815z00glj234h5g24l35"

mit folgendem Ausdruck versuche ich nun die relevanten Daten heraus zu filtern:

((Kunde)(.{1,})([0-9]{1,5}))

Ergebnisse:
"Kunden-Nr.: 00000z00glj234h5g24l35"
"Kunde00815z00glj234h5g24l35"

Mein Wunsch wäre folgendes Ergebnis:
"Kunden-Nr.: 00000"
"Kunde00815"

oder noch besser:
"00000"
"00815"

Danke euch

LG Christian

Content-ID: 251300

Url: https://administrator.de/contentid/251300

Ausgedruckt am: 22.11.2024 um 12:11 Uhr

colinardo
colinardo 08.10.2014 aktualisiert um 11:41:27 Uhr
Goto Top
Hallo Christian,
z.B. so
(Kunden-Nr\.:|Kunde).*?(\d{1,5})
dann nimmst du den zweiten Submatch und du hast deine Kundennummer face-wink

Beispiel:
Dim myRegExp, myMatches, myMatch, SubjectString
Set myRegExp = CrreateObject("vbscript.regexp")  
myRegExp.IgnoreCase = True
myRegExp.Global = True
myRegExp.Pattern = "(Kunden-Nr\.:|Kunde).*?(\d{1,5})"  
SubjectString = "f<sdglfagsdfadfasdfKunden-Nr.: 00000z00glj234h5g24l35"  
Set myMatches = myRegExp.Execute(SubjectString)
For Each myMatch In myMatches
	msgbox myMatch.Submatches(1)
Next
Grüße Uwe
spawny2407
spawny2407 08.10.2014 um 11:45:52 Uhr
Goto Top
Hi Uwe,

herzlichen Dank.
Das war die Lösung

Grüße Christian