peterS.: RegExp für einen zahlenstring zwischen "0" und "255"

Beitrag lesen

gruss seth

doch!

Du hast recht; da kann man schon was machen.

statt
  /[0-9]{1,3}/
"einfach"
  /2(?:5[0-5]|[0-4]\d)|(?:1\d|[1-9])?\d/
verwenden. ;-)

wenn ich den ausdruck so lese, glaub ich aber nicht, dass
   dieser ueberhaupt fuer den gedachten zweck taugt - hast Du
   das ding ausprobiert? angewandt auf den test weiter unten
   bekomme ich immer [true].

ich hab' mich mal an nur einer zahl zwischen 0 und 255
   versucht:

~~~javascript // folgende alternativen jeweils zwischen
   // anfang und ende einer zeichenketten:

[1]$|            // entweder einstellig : 0-9
   (?:[2][0-9])$|   // oder zweistellig    : 10-99
   (?:^1[0-9][0-9])$|  // oder dreistellig    : 100-199
   (?:^2[0-5][0-5])$   // oder dreistellig    : 200-255

var regXRGBValue = (/[3]$|(?:[4][0-9])$|(?:^1[0-9][0-9])$|(?:^2[0-5][0-5])$/);

alert(regXRGBValue.test("-1"));  // false;
   alert(regXRGBValue.test("0"));   // true;
   alert(regXRGBValue.test("1"));   // true;
   alert(regXRGBValue.test("10"));  // true;
   alert(regXRGBValue.test("99"));  // true;
   alert(regXRGBValue.test("199")); // true;
   alert(regXRGBValue.test("299")); // false;
   alert(regXRGBValue.test("256")); // false;
   alert(regXRGBValue.test("260")); // false;
   alert(regXRGBValue.test("255")); // true;

  
   bestimmt kann man das noch optimieren ... ich bin alles  
   andere als ein RegExp-experte. als basis fuer ein auf  
   validitaet pruefendes css-rgb-schema fuer werte wie z.b.  
   »rgb (0, 128, 256)« wuerde ich das trotzdem nicht nehmen  
   wollen - die arme RegExp-engine.  
  
  

> es gibt sogar leute, die [basteln kalender](http://forum.de.selfhtml.org/archiv/2006/3/t126272/#m814810) damit.  
  
   ja, ja, der Gunnar ... das ist doch krank oder ?-)  
  
  
  
   so long - peterS. - pseliger@gmx.net  
  
  

-- 
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.  
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - [Douglas Crockford](http://javascript.crockford.com/)  
  
ie:( fl:) br:> va:( ls:& fo:) rl:| n3;} n4:} ss:} de:µ js:} mo:? zu:]

  1. 0-9 ↩︎

  2. 1-9 ↩︎

  3. 0-9 ↩︎

  4. 1-9 ↩︎