Forum Doku Wiki Blog

Forumsarchiv 2011, September
Mit regulärem Ausdruck realisierbar

archivierte Beiträge lesen

  1. (PROGRAMMIERTECHNIK) Mit regulärem Ausdruck realisierbar von Gerli, 14. 09. 2011, 19:25

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 19:25 Uhr von Gerli veröffentlicht.

Hallo,
ich möchte, dass + oder - höchstns einmal in einem String vorkommt.
Das mehrfache direkt hintereinander habe ich ja im Griff durch [+-]{0,1}.
Aber das verhindert ja nicht, dass es weiter hinten im String noch einmal vorkommt. Wie kann ich dies prüfen?
Danke
Gerlinde

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 20:25 Uhr von berlinsurfer veröffentlicht.

Hallo Gerlinde,
schau mal hier:

[^+]*\+?[^+]*

Je nachdem was du mit dem String anstellen willst, könntest du das Ergebnis natürlich noch speichern (Klammern).
Gruß
--
Science flies you to the moon.
Religion flies you into buildings.

selfcode: ie:{ fl:| br:^ va:? ls:< fo:{ rl:( n4:{ ss:} de:[ js:} ch:{ sh:) mo:? zu:)

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 21:09 Uhr von Take veröffentlicht.

Moin,

warum denn immer gleich mit Kanonen auf Spatzen schießen? Die normale Stringfunktion substr_count ist da doch viel besser geeignet, als RegExe.

if (substr_count($string, '-') > 1 or substr_count($string, '+') > 1)
    echo 'Fehler.'
else
    echo 'OK.'


Gruß,
Take

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 21:35 Uhr von suit veröffentlicht.

> warum denn immer gleich mit Kanonen auf Spatzen schießen?

Zawinski :)

> Die normale Stringfunktion substr_count ist da doch viel besser geeignet, als RegExe.

Dass es sich um PHP dreht, wissen wir doch nicht - aber weil wir grade bei PHP sind: ganz kreativ lässt sich dasselbe auch mit str_replace erreichen - man ersetzt einfach + durch irgend etwas anderes und zählt die Anzahl der ersetzungen, wurde != 1x ersetzt ...

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 21:48 Uhr von MudGuard veröffentlicht.

Hi,


> > Die normale Stringfunktion substr_count ist da doch viel besser geeignet, als RegExe.
> Dass es sich um PHP dreht, wissen wir doch nicht - aber weil wir grade bei PHP sind: ganz kreativ lässt sich dasselbe auch mit str_replace erreichen - man ersetzt einfach + durch irgend etwas anderes und zählt die Anzahl der ersetzungen, wurde != 1x ersetzt ...

bei PHP:
strpos(...) === stripos(...)

bzw. in anderen Sprachen oft indexOf(...) == lastIndexOf(...)

wäre auch noch ne Möglichkeit ...

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

Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 23:14 Uhr von Take veröffentlicht.

Moin,

> > warum denn immer gleich mit Kanonen auf Spatzen schießen?
>
> Zawinski :)

Hmwa? Google führt mich zu ihm hier, aber was hat der denn hier zu bedeuten?

> Dass es sich um PHP dreht, wissen wir doch nicht - aber weil wir grade bei PHP sind: ganz kreativ lässt sich dasselbe auch mit str_replace erreichen - man ersetzt einfach + durch irgend etwas anderes und zählt die Anzahl der ersetzungen, wurde != 1x ersetzt ...

Oh, mal wieder etwas vorschnell... Aber das Ersetzen ist doch bestimmt Performancelastiger als das reine Zählen oder? :D

Gruß,
Take

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 23:19 Uhr von Gunnar Bittersmann veröffentlicht.

@@Take:

nuqneH

> > Zawinski :)
>
> Hmwa? Google führt mich zu ihm hier, aber was hat der denn hier zu bedeuten?

Falsche Suchmaschine. Die Zitatesammlung führt dich zu ihm.

Qapla'
--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 16. 09. 2011, 17:21 Uhr von Take veröffentlicht.

Moin,

> Falsche Suchmaschine. Die Zitatesammlung führt dich zu ihm.

Ach, der Spruch. Mit dem hatte ich ja auch schon mal Bekanntschaft...

Gruß,
Take

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 14. 09. 2011, 23:19 Uhr von MudGuard veröffentlicht.

Hi,
> > > warum denn immer gleich mit Kanonen auf Spatzen schießen?
> > Zawinski :)
> Hmwa? Google führt mich zu ihm hier, aber was hat der denn hier zu bedeuten?

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

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

Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 08:03 Uhr von Gerli veröffentlicht.

> Moin,
>
> warum denn immer gleich mit Kanonen auf Spatzen schießen? Die normale Stringfunktion substr_count ist da doch viel besser geeignet, als RegExe.
>
> if (substr_count($string, '-') > 1 or substr_count($string, '+') > 1)
>     echo 'Fehler.'
> else
>     echo 'OK.'
>

Hi,
die Lösung ist ganz bestimmt nicht richtig, denn da kann + einmal vorkommen    u n d    -  einmal vorkommen.
Es darf aber nur + oder - einmal vorkommen!
Gruß
Gerli

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 09:07 Uhr von Gunnar Bittersmann veröffentlicht.

@@Gerli:

nuqneH

> die Lösung ist ganz bestimmt nicht richtig, denn da kann + einmal vorkommen    u n d    -  einmal vorkommen.

> Es darf aber nur + oder - einmal vorkommen!

Du kannst 1 und 1 zusammenzählen?

if (substr_count($string, '-') + substr_count($string, '+') > 1)

Qapla'
--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 13:01 Uhr von Gerli veröffentlicht.

@Qapla


> > Es darf aber nur + oder - einmal vorkommen!
Kannst Du lesen?

Ich habe aber nicht geschrieben "es darf nur ein +    u n d    ein - vorkommen"!

>
> Du kannst 1 und 1 zusammenzählen?
Ich schon, aber Du hast wohl das Beispiel von Take nicht angeschaut!
Wenn in seinem Beispiel ein + vorhanden ist     u n d     ein -, so ist dies dort OK.
>
> if (substr_count($string, '-') + substr_count($string, '+') > 1)
Das war nicht Takes Beispiel!

Gerlinde

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 13:11 Uhr von Gunnar Bittersmann veröffentlicht.

@@Gerli:

nuqneH

> @Qapla

??


> > > Es darf aber nur + oder - einmal vorkommen!
> Kannst Du lesen?

_Ich_ schon.


> > Du kannst 1 und 1 zusammenzählen?
> Ich schon, aber Du hast wohl das Beispiel von Take nicht angeschaut!

Doch. Ich habe es sogar verstanden.



> > if (substr_count($string, '-') + substr_count($string, '+') > 1)
> Das war nicht Takes Beispiel!

Du wolltest Takes Code für deinen Anwendungsfall berichtigt haben, das hab ich getan. Also was hast du dich jetzt hier zu beschweren?

Qapla'
--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 13:20 Uhr von Gerli veröffentlicht.

>
> Du wolltest Takes Code für deinen Anwendungsfall berichtigt haben, das hab ich getan. Also was hast du dich jetzt hier zu beschweren?

Du hast auf meine Antwort an Take:
»»»» die Lösung ist ganz bestimmt nicht richtig, denn da kann + einmal vorkommen    u n d    -  einmal vorkommen.
»»»» Es darf aber nur + oder - einmal vorkommen!

geschrieben:
> Du kannst 1 und 1 zusammenzählen?

Das ist doch eindeutig zu verstehen als Vorwurf, ich hätte das Beispiel von Take nicht verstanden!

Erst danach stellst Du Dein Beispiel vor.

Und wenn sich Dein Satz "Du kannst 1 und 1 zusammenzählen?"
darauf beziehen sollte, so ist dies erst recht eine Unterstellung!

Mit regulärem Ausdruck realisierbar

Der folgende Beitrag wurde am 15. 09. 2011, 13:46 Uhr von Gunnar Bittersmann veröffentlicht.

@@Gerli:

nuqneH

> Das ist doch eindeutig zu verstehen als Vorwurf, ich hätte das Beispiel von Take nicht verstanden!

Äh, ich hoffe nicht. So war es nämlich nicht gemeint.


> Und wenn sich Dein Satz "Du kannst 1 und 1 zusammenzählen?"
> darauf beziehen sollte, so ist dies erst recht eine Unterstellung!

Nun bleib mal auf’m Teppich.

Qapla'
--
Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
(Mark Twain)

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4