[REGEX] String auf zwei Teil Strings durchsuchen und bei erfolg true ausgen?

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

  • [REGEX] String auf zwei Teil Strings durchsuchen und bei erfolg true ausgen?

    Jo siehe Threadtitel ich möchte den String in dem Fall
    http://www.daniel-portal.de?id=12313
    nach dem Vorkommen von http://www.daniel-portal.de und id prüfen und true ausgeben falls beide strings gefunden wurden wie kann ich sowas machen.
    Hintergrund des ganzen: der String ist natürlich nicht immer
    http://www.daniel-portal.de?id=12313 sondern er ändert sich ständig wenn eine id angehängt ist weis ich das es ein interner Link ist der vom admin cp spezielll verwaltet werden kann wenn nicht, nicht.
    daniel-portal.com/games Free Games and more

  • #2
    strpos
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Danke das bringt mich schon ein Stück weiter ich habe mir die Funktion angesehen leider bringt scheint sie in meinem Fall nichts ich bin inzwischen noch auf eine weitere Funktion gestoßen preg_match() damit bekomme ich schonmal meine erste Abfrage hin:
      PHP-Code:
      if( preg_match("/id/i"$textbox["Link"])){
              
      $internal_link=1;    
          } 
      Allerdings gibt es bei der zweiten Probleme ich möchte ja nach einer url suchen die zwei // enthält (wegen dem http:// und lokal sogar noch am ende ein /)
      Wie kann ich denn die Abfrage formulieren?
      bis jetzt sah mein Ansatzt so aus:
      PHP-Code:
      if( preg_match("/http://www.daniel-portal.de/i"$textbox["Link"])){
              
      $internal_link=1;    
          } 
      daniel-portal.com/games Free Games and more

      Kommentar


      • #4
        leider bringt scheint sie in meinem Fall nichts
        klar, wieso soll sie nichts bringen?
        bis jetzt sah mein Ansatzt so aus:
        ja und? du erhälts nicht etwa eine fehlermeldung? à la 'unknown modifier /'?

        wenn du schon unbedingt preg_match verwenden willst, dann mach bitte den test nur einmal, und zwar, ob beides drin ist ...

        und verwende bitte zeichensetzung in deinen beiträgen. danke.
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          Und wie fasse ich das in einen Suchausdruck zusammen? Sorry, aber mit Regulären Ausdrücken habe ich bisher noch nicht gearbeitet. Dem Link in deiner Signatur hab ich schonmal ausprobiert, aber nichts dazu gefunden wie man ein Suchmuster mit zwei Strings definiert. Das einzige was jetzt schonmal klarer ist, ist dass ich entweder andere Delimiter nehmen muss oder alle / Maskieren muss.
          daniel-portal.com/games Free Games and more

          Kommentar


          • #6
            dass ich entweder andere Delimiter nehmen muss oder alle / Maskieren muss.


            Code:
            #http://www\.daniel-portal\.de\?id=(\d+)#is
            unter der voraussetzung, daß id immer der erste parameter ist und somit über ? angefügt wird ...

            btw: ist dort noch ein / vor dem ?, ist im zitat/status zu sehen? wenn ja, einfach noch mit reinsetzen ...
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              Okay ich denke anhand diesem Beispiels habe ich das nun verstanden. Das Problem ist nun nur, dass ich die eigentlich url nie genau kenne. Daher, dass einzige was ich weis, ist das an den String immer ein ?id=(\d) angehängt sein muss. Gibt es vielleicht ein Funktion, die mir an einem beliebigen String diese Zeichen anfügt? Ich habe schon ausprobiert:
              addslashes();
              mysql_escape_string();
              Jedoch blieb mein Teststring (http://www.daniel-portal.de) immer unverändert.
              Vielleicht könntest du mir ja auch mal eine Seite nennen, wo die regulären Ausdrücke genau erklärt werden, dann müsste ich nicht immer fragen.
              daniel-portal.com/games Free Games and more

              Kommentar


              • #8
                Du wirst auf Hundis Seite schon Erklärungen finden......Weiterhin wirst du auf dieser PAge in den Tutorials etwas von Sky finden das empfehle ich dir auch......
                [color=blue]MfG Payne_of_Death[/color]

                [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                [color=red]Merke:[/color]
                [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                Murphy`s Importanst LAWS
                Jede Lösung bringt nur neue Probleme
                Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                Kommentar


                • #9
                  Gibt es vielleicht ein Funktion, die mir an einem beliebigen String diese Zeichen anfügt?
                  vielleicht solltest du uns mal klar sagen, was du nun überprüpfen willst?

                  willst du immer nach http://www.daniel-portal.de?id=irgendwas suchen, oder nicht?

                  poste doch mal zwei beispiele + gegenbeispiele ...

                  http://www.php-resource.de/tutorials/read/10/1/
                  Die Zeit hat ihre Kinder längst gefressen

                  Kommentar


                  • #10
                    Also die Sache ist die, je nachdem auf welchem Webspace das ganze installiert wird, ändert sich auch die url. Also wenn das zb hier installiert würde, dann wäre der zu durchsuchende String, wenn er intern wäre:
                    http://www.php-ressourece.de/index.php?id=12123
                    bei der installation wird die home url gespeichert, was bedeutet, dass in diesem Fall folgende Variable zur Verfügung stünde:
                    PHP-Code:
                    $config['home_path']="http://www.php-ressource.de"
                    wäre. Das einzige was immer konstant ist, ist das ?id=12323
                    Ich hoffe so ist einigermaßen Deutlich was ich machen will
                    daniel-portal.com/games Free Games and more

                    Kommentar


                    • #11
                      nein, es ist nicht deutlich geworden. du hast zwar einen zustand beschrieben, aber nicht wirklich das, was du willst.

                      pack doch in den regexp anstatt der statischen url einfach den inhalt der $config['home_path'], quotemeta sollte noch angewendet werden.
                      Die Zeit hat ihre Kinder längst gefressen

                      Kommentar

                      Lädt...
                      X