Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2008 Teil von Juli

SELFHTML Forumsarchiv
RegEx, der eine Zahl < 255 findet?

Informationsseite
  1. Seite (PROGRAMMIERTECHNIK) RegEx, der eine Zahl < 255 findet? von Eddie, 30. 07. 2008, 15:19
nach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Eddie, 30. 07. 2008, 15:19

Hallo allerseits,

ich habe leider nichts dazu gefunden, Google war mir keine Hilfe: kann ich mit einem regulären Ausdruck prüfen, ob ein String (bzw. eine Zahl) größer als 255 ist?

Also bei ($a = 256) hätte ich die Zahl gerne als Ergebnis. Keine Ahnung, ob das geht?

Danke euch,
Eddie

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: LX, 30. 07. 2008, 15:22

Es gibt keinen einzelnen regulären Ausdruck, der das leisten kann. Allerdings könntest Du (parseInt(input) || 0) > 255 verwenden, um zu testen, ob der String, wenn er eine Zahl enthält, einen Wert von über 255 hat.

Gruß, LX
--
X-Self-Code: sh:( fo:) ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: Unusual
X-Please-Search-Archive-First: Absolutely Yes

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: suit, 30. 07. 2008, 15:24

»» ich habe leider nichts dazu gefunden, Google war mir keine Hilfe: kann ich mit einem regulären Ausdruck prüfen, ob ein String (bzw. eine Zahl) größer als 255 ist?
»» Also bei ($a = 256) hätte ich die Zahl gerne als Ergebnis. Keine Ahnung, ob das geht?

muss es ein regulärer ausdruck sein? ich würds recht simpel machen

regulärer ausdruck liefert zahl (ab 3-stellen), übergibt sie an mathematische funktion die überprüft, ob die zahl > 255 ist

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Eddie, 30. 07. 2008, 15:29

Hallo suit,

»» muss es ein regulärer ausdruck sein? ich würds recht simpel machen
Das Problem ist, dass es sich um ein Array solcher Zahlen handelt (genauer: um RGB-Values). Und ich dachte, ich koennte unter PHP mittels preg_grep auf einen Schlag prüfen, ob ungültige Werte drin sind. Aber das geht dann wohl nicht :-(

Wenn ihr dafuer sonst eine Idee habt, freue ich mich, ansonsten schreibe ich halt eine Funktion, die das RGB-Array durchlaeuft und einzeln checkt!

Eddie

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: suit, 30. 07. 2008, 15:37

»» Wenn ihr dafuer sonst eine Idee habt, freue ich mich, ansonsten schreibe ich halt eine Funktion, die das RGB-Array durchlaeuft und einzeln checkt!

musst du nicht zwangsläufig - ggf hilft es auch, das array nach dem wert zu sortieren (notfalls mit einem zweiten pseudoarray mittels multisort array_multisort und dann alles > 255 rauszuwerfen (dann musst du nicht jeden wert einzeln prüfen sondern weist ab einem bestimmt wert, dass nur noch ungülte kommen können und kannst deine schleife die das array abackert dort beenden) - alternativ, rechne die werte von rgb in hex um (dechex() hilft dabei) jede hexadezimalziffer mit mehr als zwei stellen ist per defintion größer als 256

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Eddie, 30. 07. 2008, 16:47

Hallo suit,

»» musst du nicht zwangsläufig - ggf hilft es auch, das array nach dem wert zu sortieren (notfalls mit einem zweiten pseudoarray mittels multisort array_multisort und dann alles > 255 rauszuwerfen (dann musst du nicht jeden wert einzeln prüfen sondern weist ab einem bestimmt wert, dass nur noch ungülte kommen können und kannst deine schleife die das array abackert dort beenden) - alternativ, rechne die werte von rgb in hex um (dechex() hilft dabei) jede hexadezimalziffer mit mehr als zwei stellen ist per defintion größer als 256

Beides sehr interessante Vorschlaege! Fuer meine 1-dimensionalen RGB-Arrays der Länge 3 waere also bspw. folgendes möglich:

$a = (255, 255, 256);

return (min($a) < 0 || max($a) > 255);

oder

return (strlen(dechex(array_product($a))) > 6);

Ist natuerlich beides nicht 100% wasserdicht, aber immerhin ;-)

Eddie

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: suit, 30. 07. 2008, 16:51

»» »» jede hexadezimalziffer mit mehr als zwei stellen ist per defintion größer als 256
»» Beides sehr interessante Vorschlaege!
2-stellige hexadezimalzahlen sind natürlich größer als 255 da xFF exakt 255 entspricht, x100 (dreistellig) 256

ich bin auf das endprodukt gespannt - aber mit dem 1-dimensionalen array wundert mich jetzt - ich dachte du hast ein mehrdimensionales array - quasi eine "tabelle" mit dezimalen rgb werten ;) die du durchrattern musst - wenns eh nur 3 einträge sind, ist das ja kein aufwand - da ist die verwendete funktion performancemäßig fast egal - oder versteh ich das falch

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Eddie, 30. 07. 2008, 17:08

Hi suit,

»» ich bin auf das endprodukt gespannt - aber mit dem 1-dimensionalen array wundert mich jetzt - ich dachte du hast ein mehrdimensionales array - quasi eine "tabelle" mit dezimalen rgb werten ;) die du durchrattern musst - wenns eh nur 3 einträge sind, ist das ja kein aufwand - da ist die verwendete funktion performancemäßig fast egal - oder versteh ich das falch

Nein, du hast das nicht falsch verstanden! Ich war nur aus reinem Interesse an der einfachsten Loesung interessiert. Und ich wollte mir die Funktion sparen ;-) Mit RegEx waer das echt schoen gewesen!

Eddie

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: suit, 30. 07. 2008, 17:29

»» Nein, du hast das nicht falsch verstanden! Ich war nur aus reinem Interesse an der einfachsten Loesung interessiert. Und ich wollte mir die Funktion sparen ;-) Mit RegEx waer das echt schoen gewesen!

ja, aber wie lx indirekt sagt ist ein einfach regulärer ausdruck hier nicht möglich, natürlich ist es mit einem regulären ausdruck möglich, aber in diesem fall ist dieser so komplex, dass er in keinem verhältnis zum nutzen steht ;)

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: basti_p, 30. 07. 2008, 15:33

Hallo,

hast Du mal ein Beispiel, in welchem Kontext die Zahlen vorkommen?

Grüße Basti

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Bio, 30. 07. 2008, 20:49

Sup!

Also, eine Zahl größer 255 ist:
- Jede 4-stellige Zahl (mal angenommen, führende Nullen sind nicht erlaubt)
oder
- Jede 3-stellige Zahl, die mit [3-9] anfängt
oder
- Jede 3-stellige Zahl der Form 26\d
oder
- Jede 3-stellige Zahl der Form 25[6-9]

Da kann man ja ganz leicht einen RegEx draus machen...

Ob das sinnvoll ist, sei dahingestellt.

Gruesse,

Bio
--
Never give up, never surrender!!!

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: MudGuard, 30. 07. 2008, 23:22

Hi,

»» Also, eine Zahl größer 255 ist:
»» - Jede 4-stellige Zahl (mal angenommen, führende Nullen sind nicht erlaubt)
»» oder
»» - Jede 3-stellige Zahl, die mit [3-9] anfängt
»» oder
»» - Jede 3-stellige Zahl der Form 26\d
»» oder
»» - Jede 3-stellige Zahl der Form 25[6-9]

270 .. 299

»» - Jede 3-stellige Zahl der Form 26\d

muß eher 2[6-9]\d heißen ;-)

cu,
Andreas
--
Warum nennt sich Andreas hier MudGuard?
O o ostern ...

Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Eddie, 31. 07. 2008, 16:14

Heureka! Es geht also doch!!! Ich lass trotzdem die Finger davon, war aber schoen, euch beim (erfolgreicheren als meinem) Um-die-Ecke-Denken zuzusehen :-) Horizont erfolgreich erweitert, dann aber doch noch Frank Schönmanns Zitat (s.o.) gelesen ;-)

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Gunnar Bittersmann, 31. 07. 2008, 20:00

@@Eddie:

»» […] dann aber doch noch Frank Schönmanns Zitat (s.o.) gelesen ;-)

Welches von beiden: das über reguläre Ausdrücke oder das über Idioten? ;-)

Wobei mich ersteres irgendwie an Zitat 1266 erinnert.

Live long and prosper,
Gunnar
--
Erwebsregel 208: Manchmal ist das einzige, was gefährlicher als eine Frage ist, eine Antwort.

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Bio, 01. 08. 2008, 07:26

Sup!

»» - Jede 4-stellige Zahl (mal angenommen, führende Nullen sind nicht erlaubt)

Also quasi jede Zahl \d*[1-9]+\d{3,}

Gruesse,

Bio
--
Never give up, never surrender!!!

nach obennach unten

RegEx, der eine Zahl < 255 findet?

Die folgende Nachricht zum Thema stammt von: Frank Schönmann, 30. 07. 2008, 23:09

hi!

»» ich habe leider nichts dazu gefunden, Google war mir keine Hilfe: kann ich
»» mit einem regulären Ausdruck prüfen, ob ein String (bzw. eine Zahl) größer
»» als 255 ist?

    Some people, when confronted with a problem, think "I know, I'll use
    regular expressions." Now they have two problems.

bye, Frank!
--
Never argue with an idiot. He will lower you to his level and then
beat you with experience.

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2008 Teil von Juli

© 1998-2006 Seite Impressum, Software: Classic Forum