*Markus: Unterschied contains, matches?

Hallo,

ich habe folgende Schleife:

  
for (int i = 0; i < pdfdaten.length; i++)   {  
    if (pdfdaten[i].contains("01755555"))  
       System.out.println(pdfdaten[i]);  
}  

So wie sie ist, liefert sie das gewünschte Ergebnis. Tausche ich aber contains gegen matches aus, wobei mir matches auch logisch erscheint, bekomme ich keine Ausgabe. Es werden also keine Treffer geliefert. Warum ist das so?
Der durchzusuchende String sieht zB so aus:
11.12.2006 11:35:23 4369981963300 01755555*** Telefonie Österreich 00:03:34 0,2300

Markus

--
http://www.apostrophitis.at
六 7東曲 人港ラ
  1. Hi,

    So wie sie ist, liefert sie das gewünschte Ergebnis. Tausche ich aber contains gegen matches aus, wobei mir matches auch logisch erscheint,

    Warum hast Du die Doku zu den Methoden nicht gelesen?

    matches benutzt einen regulären Ausdruck (was in Deinem Fall überflüssig ist, Du suchst ja nur nach einem konstanten String), außerdem muß der reguläre Ausdruck den gesamten String matchen (in Deinem Fall ist der gesuchte String aber nur ein kleiner Bruchteil).

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    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.
    1. Hi,

      So wie sie ist, liefert sie das gewünschte Ergebnis. Tausche ich aber contains gegen matches aus, wobei mir matches auch logisch erscheint,

      Warum hast Du die Doku zu den Methoden nicht gelesen?

      Das habe ich natürlich, aber worin besteht für Java der Unterschied, ob der reguläre Ausdruck so "7555", oder vll. so "\d+?" aussieht?

      matches benutzt einen regulären Ausdruck (was in Deinem Fall überflüssig ist, Du suchst ja nur nach einem konstanten String), außerdem muß der reguläre Ausdruck den gesamten String matchen (in Deinem Fall ist der gesuchte String aber nur ein kleiner Bruchteil).

      Es ist natürlich vereinfacht dargstellt, aber es sind schon verschiedene Nummern, nach denen gesucht werden sollen.
      Ist es denn nicht so, dass der Ausdruck auch dann passt, wenn irgendwo im String der Ausdruck vorkommt? Ich denke, dass es in Perl auch so ist, oder irre ich mich jetzt?

      --
      http://www.apostrophitis.at
      六 7東曲 人港ラ
      1. Hi,

        Ist es denn nicht so, dass der Ausdruck auch dann passt, wenn irgendwo im String der Ausdruck vorkommt?

        Warum hast Du die Doku zu den Methoden nicht gelesen?

        Ich denke, dass es in Perl auch so ist, oder irre ich mich jetzt?

        Fährst Du in Deutschland auf der linken Straßenseite? Denn in Großbritannien ist das ja auch so, oder irre ich mich jetzt?

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Schreinerei Waechter
        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.