Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Regex Problem.

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gast-Avatar
    Ein Gast erstellte das Thema [Erledigt] Regex Problem..

    [Erledigt] Regex Problem.

    Hallo..

    Kenne mich leider mit Regex überhaupt nicht aus. Würde aber gerne eine Matrikelnummer auf ihre Gültigkeit überprüfen:

    Bedingung:

    $string = 823456;

    1. Darf nur aus Ziffern bestehen
    2. Muss mit 8 anfangen
    3. Darf genau 6 Zeichen lang sein

    Habe mir regex angeschaut:
    if (preg_match ("/^[8]/", $string) // So kann ich feststellen, ob mein String mit 8 anfängt.
    if (preg_match ("/^[8]/", $string) // So kann ich feststellen, ob mein String nur als Zahlen besteht
    mit {6} kann ich die Länge angeben.

    Ich kann das Ganze aber nicht miteinander verbinden.

    Gruß und Dank im Voraus
    Aaron

  • Gast-Avatar
    Ein Gast antwortete
    was für ein Fehler *g*

    Einen Kommentar schreiben:


  • DiBo33
    antwortet
    Zitat von HStev
    Zitat von DiBo33
    Häää?
    probier mal folgendes
    PHP-Code:
    <?php
    $var 
    "Hallo Welt";

    echo 
    "$var";
    echo 
    '$var';
    ?>
    Ach dat meinst du

    Naja in dem Fall war beides gemeint.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    du hast
    --> $string = 865432A;

    aber da da ein A enthalten ist, heisst das, dass es keine Zahl sein kann.

    Deshalb $string = "865432A"; oder $string = '865432A';

    Einen Kommentar schreiben:


  • HStev
    antwortet
    Zitat von DiBo33
    Häää?
    probier mal folgendes
    PHP-Code:
    <?php
    $var 
    "Hallo Welt";

    echo 
    "$var";
    echo 
    '$var';
    ?>

    Einen Kommentar schreiben:


  • DiBo33
    antwortet
    Zitat von HStev
    Zitat von DiBo33
    Auch in PHP gehören Strings immer noch in Hochkommas.
    das spielt aber nur ne Rolle wenn n $ Zeichen im String vorkommt
    Häää?

    Einen Kommentar schreiben:


  • HStev
    antwortet
    Zitat von DiBo33
    Auch in PHP gehören Strings immer noch in Hochkommas.
    das spielt aber nur ne Rolle wenn n $ Zeichen im String vorkommt

    Einen Kommentar schreiben:


  • DiBo33
    antwortet
    Auch in PHP gehören Strings immer noch in Hochkommas.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    @DiBo33:

    So sieht das Ganze bei mir aus:

    PHP-Code:
    <?php
    $string 
    865432A;

    if (
    preg_match ("/^8\d{5}$/"$string)) {
        echo 
    "ok";
    } else {
        echo 
    "nicht ok";
    }
    ?>
    Fehlermeldung: Parse error: parse error, unexpected T_STRING in /var/www/katalog/test.php on line 24

    Zeile 24 -> $string = 865432A;


    Wenn ich A entferne, funktioniert alles. Sobald ein Buchstabe eingegeben wird, erscheint die Fehlermeldung.

    Guß
    Aaron

    Einen Kommentar schreiben:


  • DiBo33
    antwortet
    if (preg_match ("/^8\d{5}$/", $string))

    Zu deiner letzten Frage, nein das passiert wenn du die 2. abschliessende Klammer vergisst.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    @DiBo33:

    Wenn innerhalb des String Buchstaben vorkommen, erhalte ich folgende Fehlermeldung:

    Parse error: parse error, unexpected T_STRING in /var/www/katalog/test.php on line 24

    Zeile 24 -> $string = "865432A";

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Die Bedingung lautet:

    1. Darf nur aus Ziffern bestehen
    2. Muss mit 8 anfangen
    3. Darf genau 6 Zeichen lang sein

    Was stimmt hiermit nicht ?
    if (preg_match ("/^8\d{5}/", $string) {


    habe dich nicht verstanden ?

    Gruß
    Aaron

    Einen Kommentar schreiben:


  • DiBo33
    antwortet
    Zitat von HStev
    Zitat von aaron_k
    if (preg_match ("/^8\d{5}/", $string) {
    so darf der String aber nur aus 6 Zahlen bestehen wor bei die erste Ziffer eine 8 sein muss

    so dürfen es auch normale Zeichen sein
    Code:
    if (preg_match ("/^8.{5}/", $string) {
    Und was passiert bei
    $string = "865432A"; ?

    Endezeichen vergessen.

    Einen Kommentar schreiben:


  • HStev
    antwortet
    Zitat von aaron_k
    if (preg_match ("/^8\d{5}/", $string) {
    so darf der String aber nur aus 6 Zahlen bestehen wor bei die erste Ziffer eine 8 sein muss

    so dürfen es auch normale Zeichen sein
    Code:
    if (preg_match ("/^8.{5}/", $string) {

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    if (preg_match ("/^8\d{5}/", $string) {

    Einen Kommentar schreiben:

Lädt...
X