Announcement

Collapse
No announcement yet.

Aus einer Zeichenfolge die Zahlen lesen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Aus einer Zeichenfolge die Zahlen lesen

    /*
    Aus einer Zeichenfolge sollen die Zahlen ermittelt werden und
    in einer neuen Variablen zusammgestellt werden.

    Problem:
    set @zahlenfolge = @zahlenfolge + substring(@zeichenfolge, @position, 1)
    print @zahlenfolge

    Diese Anweisung setzt die Zahlen nicht zusammen.
    Wo liegt der Fehler bzw.
    wie kann mann das Problem umgehen?

    */

    declare @zeichenfolge as char(10)
    set @zeichenfolge = 'a1b2c3d4e5'
    print 'Zeichenfolge'
    print @zeichenfolge

    declare @zahlenfolge as char(5)
    set @zahlenfolge = '' -- Ergebnis sollte sein '12345'

    declare @laenge int
    set @laenge = len(@zeichenfolge)
    print 'Länge'
    print @laenge

    declare @position int
    set @position = 1

    while @position <= @laenge
    begin
    print '--------'
    print 'Position'
    print @position

    print 'Zeichen'
    print substring(@zeichenfolge, @position, 1)

    if substring(@zeichenfolge, @position, 1) in('0','1','2','3','4','5','6','7','8','9')
    begin
    print 'Zahl'
    set @zahlenfolge = @zahlenfolge + substring(@zeichenfolge, @position, 1)
    print @zahlenfolge
    end


    set @position = @position + 1

    end




    -- Gruss Carsten

  • #2
    Definiere einfach @zahlenfolge nicht als char(5) sondern als varchar(5), dann wird es funktionieren :-)
    (als Erklärung sich mal am besten im Manual die Beschreibung zu char() und varchar() genau durchlesen!)

    bye,
    Helmut

    Comment


    • #3
      An so "Kleinigkeiten" mit großer Wirkung kann es hängen.

      Vielen Dank,
      es hat funktioniert

      Gruss
      Carsten

      Comment

      Working...
      X