Laden...

RegEx fuer Zahlen mit Buchstabe davor...?

Erstellt von s0h0 vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.122 Views
S
s0h0 Themenstarter:in
683 Beiträge seit 2006
vor 14 Jahren
RegEx fuer Zahlen mit Buchstabe davor...?

Hi.

ich wuerde gerne in einem dynamischen string den teil "\S50013124" replacen:

string dynString= "call \S50013124\blabla\bla"; //Zahlen können immer anders sein...

in diesem aber nicht:
string input2 = "call blablabla 56556565


Regex rgx = new Regex(@"\S\d+");
string output = rgx.Replace(input(2), "TEST");

diese regex die ich mir zamgebastelt hab ersetzt aber in beiden strings die zahlen... hab schon voll rumprobiert. hat jemand einen tip???

danke

Eine Null kann ein bestehendes Problem verzehnfachen

S
s0h0 Themenstarter:in
683 Beiträge seit 2006
vor 14 Jahren

sorry ich habs...

@"\\\\S{1}\d{6,8}

Eine Null kann ein bestehendes Problem verzehnfachen

49.485 Beiträge seit 2005
vor 14 Jahren

Hallo s0h0,

{1} kannst und solltest du weglassen.

herbivore

S
s0h0 Themenstarter:in
683 Beiträge seit 2006
vor 14 Jahren

ok danke.

warum eigentlich? das S soll darf da doch nur einmal vorkommen?

Eine Null kann ein bestehendes Problem verzehnfachen

916 Beiträge seit 2008
vor 14 Jahren

Das ist es ja, \s heißt einmal.

Again what learned...

S
s0h0 Themenstarter:in
683 Beiträge seit 2006
vor 14 Jahren

ok, meinst du jetzt das es heisst einmal weil ich nur einmal \s schreibe oder meinst du das ein fester ausdruck ist und dass "s" fuer einmal steht?

den in meinem string kommt ja immer das S vor den zahlen vor...
call \S50013124\blabla\bla

Eine Null kann ein bestehendes Problem verzehnfachen

C
401 Beiträge seit 2007
vor 14 Jahren

Solange du nicht sagst, dass ein Zeichen, oder eine Sequenz öfter vorkommen kann, z.B. mit *,+ oder was auch immer, darf es nur einmal vorkommen.

49.485 Beiträge seit 2005
vor 14 Jahren

Hallo s0h0,

das S soll darf da doch nur einmal vorkommen?

eben, und einmaliges Vorkommen ist default. Wenn du den Text "hallo" matchen willst, kannst du schreiben "h{1}a{1}l{2}o{1}" oder einfacher eben "hallo" (oder von mir aus "hal{2}o"). "{1}" kann man immer weglassen.

herbivore

S
s0h0 Themenstarter:in
683 Beiträge seit 2006
vor 14 Jahren

ah ok merci! so langsam daemmerts mir was diese kryptische anordnung von regexn bedeuten 😉

Eine Null kann ein bestehendes Problem verzehnfachen