Nicy: [REGEX] /w Umlaute matchen

Habe einige threads schon durchgelesen aber es gab nirgends eine richtige lösung.

[1]+$

wie kann ich das besser machen mit ohne delimiter zu verwenden ?


  1. äöüßÄÖÜA-Za-z0-9\s-:& ↩︎

  1. @@Nicy:

    nuqneH

    Habe einige threads schon durchgelesen aber es gab nirgends eine richtige lösung.

    Für welches Problem?

    [1]+$
    wie kann ich das besser machen mit ohne delimiter zu verwenden ?

    Was ist „das“?

    Qapla'

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

    1. äöüßÄÖÜA-Za-z0-9\s-:& ↩︎

  2. Tach!

    [1]+$
    wie kann ich das besser machen mit ohne delimiter zu verwenden ?

    Ich rate mal ins Blaue hinein, weil du nicht angegeben hast, welches Problem du lösen möchtest. Welchen Grund sollte es denn geben, neben den lateinischen Buchstaben und den anderen angegebenen Zeichen ausgerechnet nur auf die im Deutschen verwendeten Umlaute und keinerlei andere Buchstaben zu prüfen? Was ist mit Akzenten, wie sie nicht nur im Französischen sondern auch bei im deutschen Sprachraum vergebenen Namen vorkommen? Wenn das eine Prüfung zur Verhinderung irgendwelchen Missbrauchs ist, so ist sie ungeeignet, weil man auch mit dem gegebenen Zeichenvorrat noch genügend unerwünschte Zeichenfolgen erstellen kann. So eine Prüfung kann keine menschliche Intelligenz ersetzen, und da diese letzlich unumgänglich ist, kann man auf eine solche Prüfung im Grunde genommen gleich ganz verzichten.

    dedlfix.


    1. äöüßÄÖÜA-Za-z0-9\s-:& ↩︎

    1. falsch.
      es ist genau so richtig. alle anderen zeichen sind nicht erlaubt auch Akzente nicht. da sie u.a. gründen mit der suchmaschiene nicht klarkommen kaum user gibt nen akzent ein wenn er nach was bestimmten sucht. (ich rede von 95% der user bitte keine extrembeispiele danke)

  3. Hi,

    Habe einige threads schon durchgelesen aber es gab nirgends eine richtige lösung.

    [1]+$

    wie kann ich das besser machen mit ohne delimiter zu verwenden ?

    "Mit ohne" Delimiter geht es gar nicht, weil die für perl-kompatible reguläre Ausdrücke in PHP erforderlich sind. (Ich vermute, dir ist unklar, was Delimiter eigentlich sind?)

    Vielleicht - deine Problembeschreibung lässt in der Tat zu wünschen übrig - suchst du ja eher sowas wie Unicode character properties?

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?

    1. äöüßÄÖÜA-Za-z0-9\s-:& ↩︎

    1. ja sorry habe vergessen dazuzuschreiben das es sich um die Umlaute handelt wie man es korrekt einbezieht in das regex.
      denke es gibt keine einfachere oder bessere lösung als meine

      1. ja sorry habe vergessen dazuzuschreiben das es sich um die Umlaute handelt wie man es korrekt einbezieht in das regex.
        denke es gibt keine einfachere oder bessere lösung als meine

        Was gefällt dir an deiner Lösung nicht?

        1. Was gefällt dir an deiner Lösung nicht?

          war mir nicht sicher obs so korrekt ist.
          dann ist ja gut.
          thread is geklärt thx für die tipps.

  4. Habe einige threads schon durchgelesen aber es gab nirgends eine richtige lösung.

    Für welches Problem?

    wie kann ich das besser machen mit ohne delimiter zu verwenden ?

    Weißt du überhaupt, was ein Delimiter ist? Ich fürchte nicht ...

    Du meinst vermutlich wie du das ohne Zeichenklasse machen kannst - die Antwort: gar nicht, du musst für dein vorhaben auf jeden Fall eine Zeichenklasse verwenden, weil du eine sehr eigenwillige Zusammenstellung von Zeichen hast. Du willst z.B. keine Unterstriche aber dafür Bindestriche, &-Zeichen und Doppelpunkte und weiterhin sämlich Whitespace-Zeichen

    Es gibt vordefinierte Zeichenklassen \w z.B. matcht alle "Word"-Zeichen

    Das ist üblicherweise gleichbedeutet zu [A-Za-z0-9_] und je nach Lokalisierungseinstellung ggf. noch weitere Zeichen - in deiner Liste fehlt übrigens das große scharfe S: ẞ

    Was denn nun tatsächlich unter \w verstanden wird kann von PHP-Version zu Version unterschiedlich sein, von den Server-Einstellungen abhängen oder von den Einstellungen, mit denen PHP übersetzt ist. Ebenso ist entscheiden, ob im Ausdruck der Unicode-Modifier verwendet wird.

    Eine andere Möglichkeit wäre \p{L} zu verwenden (trifft auf alle "Buchstaben" zu) - aber das matcht bedeutet mehr als du eigentlich erlauben willst und funktioniert zudem nur, wenn PHP mit "--enable-unicode-properties" übersetzt wurde.