Reguläre Ausdrücke

Status
Nicht offen für weitere Antworten.

Eminent

Bekanntes Mitglied
Hi,

ich hab mal wieder ne Frage! :roll:

Also ich habe verschiedene Strings und möchte diese jetzt auf Inhalt prüfen bzw. schauen ob nur Zahlen oder nur Buchstaben im String sind.

Ist an und für sich kein Problem, wenn ich den String Char für Char durchspringe und immer

Code:
char.isLetter();
char.isDigit();

benutze. Alternativ könnte ich mir ja auch immer einen Buchstaben als String nehmen und dann fragen

Code:
string.matches("[a-zA-Z]");
string.matches("[0-9]");

Aber für beide Lösungen müsste ich immer auf jeden einzelnen Buchstaben prüfen (OK bei nur Zahlen gings auch anderes :bae: ).

Gibts mit Hilfe der Regulären Ausdrücke nicht ne Möglichkeit wie ich einen kompletten String prüfen kann. Mit einzelnen Buchstaben z. B.

Code:
String s = "aaaaaa";
s.matches("a*");

geht das ganze ja. Nur ich find keine Möglichkeit das ganze so zu machen, dass er mir einfach sagt ob ein String nur Buchstaben enthält.

Geht das überhaupt? Oder muss ich einfach jeden Buchstaben / jede Zahl einzelnen prüfen?

Danke für eure Hilfe.

Gruß
Eminent
 

Mörketid

Aktives Mitglied
hi, also du willst schauen, ob in einem string nur buchstaben sind? na dann sollte doch deine lösung gehen?

Code:
if(s.matches("[a-zA-Z]*")){
    //nur buchstaben
}else{
    //nicht nur buchstaben
}

oder was ist jetzt das problem?

gruß
 
G

Guest

Gast
Mörketid hat gesagt.:
hi, also du willst schauen, ob in einem string nur buchstaben sind? na dann sollte doch deine lösung gehen?

Code:
if(s.matches("[a-zA-Z]*")){
    //nur buchstaben
}else{
    //nicht nur buchstaben
}

oder was ist jetzt das problem?

gruß

DANKE, wenn dus jetz nich gesagt hättest, dann hätte mich die EINFACHE Lösung wahrscheinlich noch geschlagen!!! Bin zwar auf die Idee mit a* gekommen, dass ich das ganze ja aber auch auf ne [a-z]* machen kann, auf die Idee bin ich natürlich mal wieder nich gekommen!!!

DANKE NOCHMAL
 

kama

Top Contributor
Hi,

meinem Verständnis nach hat diese Lösung einen kleinen Schöheitsfehler.
Nämlich der, dass ein String "" auch als "buchstaben erkannt wird. Ich würde sagen, man müsste hier "[a-zA-Z]+" schreiben. Damit mindestens ein Buchstabe vorkommen muss. Weiterhin würde ich sagen, dass der Anfang und das End "^[a-zA-Z]+$" entsprechend abgesichert werden müssten?

MfG
Karl Heinz
 

Eminent

Bekanntes Mitglied
Ich seh schon, ich muss mich mal etwas genauer mit regulären Ausdrücken beschäftigen.

Bis jetzt habe ich die noch nie so richtig verwendet.

Danke euch allen nochmal für die Hilfe hat mir wirklich sehr geholfen!!!

[schild=4 fontcolor=000000 shadowcolor=C0C0C0 shieldshadow=1]DANKE[/schild]

Gruß
Eminent
 

norman

Top Contributor
kama hat gesagt.:
Weiterhin würde ich sagen, dass der Anfang und das End "^[a-zA-Z]+$" entsprechend abgesichert werden müssten?

wozu? wenn der string nur buchstaben enthält, dann beginnt und endet er zwangsweise auch mit einem. :meld:
 

Leroy42

Top Contributor
norman hat gesagt.:
kama hat gesagt.:
Weiterhin würde ich sagen, dass der Anfang und das End "^[a-zA-Z]+$" entsprechend abgesichert werden müssten?

wozu? wenn der string nur buchstaben enthält, dann beginnt und endet er zwangsweise auch mit einem. :meld:

Ich habe mich zwar noch nie mit Java-RegExps beschäftigt, aber der Ausdruck
"[a-zA-Z]+" matcht doch normalerweise das erste Auftreten, oder nicht?

Also bei " ,.-_:;äöüßg123456789" findet er das "g", was ja nicht sein soll, wenn der
gesamte String nur aus (lateinischen) Buchstaben bestehen soll.
 

Leroy42

Top Contributor
Achso, also anders als die gewohnten Unix-tools.

Dann braucht man natürlich keine zusätzlichen Anfangs/Ende Begrenzer.
 

Eminent

Bekanntes Mitglied
Hi,

nachdem ich hier etwas ähnliches schon mal gefragt hab nehme ich mal meinen alten Theard um nicht nen neuen aufmachen zu müssen.

Diesmal ist es nur n bisschen anderen und zwar wird mir eine id übergeben und je nachdem aus welchen beiden Buchstaben die ID besteht muss ich entweder einen Zwischenschritt machen oder nicht.

Mit großen if ... else if ... else if ... oder auch if (... || ... || ... ||...) geht das ganze ja schon auch, nur fände ich es schöner, wenn ich das ganze mit einem einfachen String#matches(regex) abdecken könnte.

Kommen können alle möglichen verschiedenen ids und es nur genau dann etwas passieren, wenn es sich um eine der vier folgenden ids handelt:

bv
ss
xx
tm

Ich hatte jetzt folgendes versucht:

String#matches("[bsxt][vsxm]")

Das funktioniert auch bei den vier genannten ids ohne Problem, Problem ist nur, dass es auch ids gibt, die hier soz. mit durch rutschen (z. B. sm). Gibt es da eine einfache Möglichkeit das ganze in einem einzigen regex abzubilden, oder muss ich hier einfach damit leben, dass ich mehrere Abfragen dafür brauche?

Danke euch schon mal für die Hilfe!!!

Gruß
Eminent
 

Eminent

Bekanntes Mitglied
Hi,

nachdem ich hier etwas ähnliches schon mal gefragt hab nehme ich mal meinen alten Theard um nicht nen neuen aufmachen zu müssen.

Diesmal ist es nur n bisschen anderen und zwar wird mir eine id übergeben und je nachdem aus welchen beiden Buchstaben die ID besteht muss ich entweder einen Zwischenschritt machen oder nicht.

Mit großen if ... else if ... else if ... oder auch if (... || ... || ... ||...) geht das ganze ja schon auch, nur fände ich es schöner, wenn ich das ganze mit einem einfachen String#matches(regex) abdecken könnte.

Kommen können alle möglichen verschiedenen ids und es nur genau dann etwas passieren, wenn es sich um eine der vier folgenden ids handelt:

bv
ss
xx
tm

Ich hatte jetzt folgendes versucht:

String#matches("[bsxt][vsxm]")

Das funktioniert auch bei den vier genannten ids ohne Problem, Problem ist nur, dass es auch ids gibt, die hier soz. mit durch rutschen (z. B. sm). Gibt es da eine einfache Möglichkeit das ganze in einem einzigen regex abzubilden, oder muss ich hier einfach damit leben, dass ich mehrere Abfragen dafür brauche?

Danke euch schon mal für die Hilfe!!!

Gruß
Eminent
 
G

Guest

Gast
Tobias hat gesagt.:
String.matches("[bv]|[ss]|[xx]|[tm]"); ?

So weit ich reguläre ausdrücke bis jetz verstanden habe würde deine Abfrage prüfen ob es sich um einen String handelt, der aus 4 Buchstaben besteht, wobei der erste Buchstabe im String ein b oder ein v sein müsste, der zweite Buchstabe ein s, usw.
 

LoN_Nemesis

Bekanntes Mitglied
Wenns nur 4 Fälle gibt, kann man doch auch noch eine Anweisung ala

Code:
if (String.compareTo("bv") || String.compareTo("xx") || String.compareTo("ss") || String.compareTo("tm"))
      doSomething();

verantworten, oder? Ich finde das nicht so schlimm, ausserdem ist es bestimmt schneller ;) Ich weiss du hattest geschrieben, dass du das lieber als regex formuliert hättest, aber ich denke das ist einfach kein guter Anwendungsfall für regüläre Ausdrücke.
 

Eminent

Bekanntes Mitglied
LoN_Nemesis hat gesagt.:
Wenns nur 4 Fälle gibt, kann man doch auch noch eine Anweisung ala

Code:
if (String.compareTo("bv") || String.compareTo("xx") || String.compareTo("ss") || String.compareTo("tm"))
      doSomething();

verantworten, oder? Ich finde das nicht so schlimm, ausserdem ist es bestimmt schneller ;) Ich weiss du hattest geschrieben, dass du das lieber als regex formuliert hättest, aber ich denke das ist einfach kein guter Anwendungsfall für regüläre Ausdrücke.

Stimmt schon, die vier Vergleiche werden mich auch nicht umbringen! :lol: Ich werd das ganze dann auch so machen denke ich, dacht nur vielleicht kann man da ja n bisschen mit so nem Regex rum spielen! :D

Wie dem auch sein, danke für die Hilfe!!

Gruß
Eminent
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Reguläre Ausdrücke Java Basics - Anfänger-Themen 1
W Reguläre Ausdrücke Java Basics - Anfänger-Themen 1
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
K FYI: Reguläre Ausdrücke nutzen ja/nein Java Basics - Anfänger-Themen 2
B Reguläre Ausdrücke Java Basics - Anfänger-Themen 2
P Reguläre Ausdrücke und Korrektheit Java Basics - Anfänger-Themen 2
0 Reguläre Ausdrücke bzw. Zahlenformat im String Java Basics - Anfänger-Themen 7
G Reguläre Ausdrücke Zeichenketten Java Basics - Anfänger-Themen 12
C Klassen Reguläre Ausdrücke auf Gleichheit prüfen Java Basics - Anfänger-Themen 5
J Reguläre Ausdrücke Java Basics - Anfänger-Themen 3
C Reguläre-Ausdrücke Java Basics - Anfänger-Themen 5
J reguläre Ausdrücke Java Basics - Anfänger-Themen 1
B Reguläre Ausdrücke Java Basics - Anfänger-Themen 3
B Java - Reguläre Ausdrücke - RegEx oder Regular Expressions - Eckige Klammern Java Basics - Anfänger-Themen 2
H Erste Schritte Von jpg zu jpeg // reguläre Ausdrücke Java Basics - Anfänger-Themen 3
K Reguläre Ausdrücke Java Basics - Anfänger-Themen 3
K Reguläre Ausdrücke Java Basics - Anfänger-Themen 6
B Reguläre Ausdrücke Java Basics - Anfänger-Themen 5
K Reguläre Ausdrücke Java Basics - Anfänger-Themen 5
C Reguläre Ausdrücke: string.matches() und gefangene Gruppen Java Basics - Anfänger-Themen 12
S Reguläre Ausdrücke richtig einsetzten Java Basics - Anfänger-Themen 5
T Reguläre Ausdrücke Java Basics - Anfänger-Themen 18
0 Reguläre Ausdrücke und Funktionen Java Basics - Anfänger-Themen 2
D Reguläre Ausdrücke Java Basics - Anfänger-Themen 3
S Reguläre Ausdrücke Java Basics - Anfänger-Themen 16
A Reguläre Ausdrücke Frage Java Basics - Anfänger-Themen 3
E Reguläre Ausdrücke mit sehr variablen Eigenschaften Java Basics - Anfänger-Themen 2
N Reguläre Ausdrücke - bekomme Suchkriterium nicht hin Java Basics - Anfänger-Themen 3
J Reguläre Ausdrücke in Java Java Basics - Anfänger-Themen 2
J Reguläre Ausdrücke Java Basics - Anfänger-Themen 6
S Strings und reguläre Ausdrücke Java Basics - Anfänger-Themen 2
N Reguläre Ausdrücke Java Basics - Anfänger-Themen 4
S Reguläre Ausdrücke Java Basics - Anfänger-Themen 2
M Reguläre ausdrücke? Java Basics - Anfänger-Themen 8
D Reguläre Ausdrücke: Anzahl Wiederholungen als Variable? Java Basics - Anfänger-Themen 3
A Reguläre Ausdrücke Java Basics - Anfänger-Themen 2
M Reguläre Ausdrücke - maskieren von Zeichen? Java Basics - Anfänger-Themen 9
M Reguläre Ausdrücke und Ausgabe Java Basics - Anfänger-Themen 10
K Reguläre Ausdrücke - Gefundene Tokens direkt ermitteln Java Basics - Anfänger-Themen 3
J Reguläre Ausdrücke: Zeichenfolge ausschließen Java Basics - Anfänger-Themen 2
G Reguläre Ausdrücke Java Basics - Anfänger-Themen 13
L java und reguläre ausdrücke Java Basics - Anfänger-Themen 4
G Reguläre Ausdrücke zum Filtern von logfiles Java Basics - Anfänger-Themen 2
T Reguläre Ausdrücke? Java Basics - Anfänger-Themen 3
O reguläre Ausdrücke bei java.util.regex.Pattern Java Basics - Anfänger-Themen 4
A Reguläre Ausdrücke der Pfade unter Windows und Unix Java Basics - Anfänger-Themen 3
N Reguläre Ausdrücke Java Basics - Anfänger-Themen 5
G Problem reguläre Ausdrücke Java Basics - Anfänger-Themen 4
A Reguläre Ausdrücke: Inhalt zwischen zwei Schlüsselwörtern Java Basics - Anfänger-Themen 2
A Reguläre Ausdrücke: Problem mit Backslash Java Basics - Anfänger-Themen 3
W Reguläre Ausdruck Java Basics - Anfänger-Themen 6
K Warum zeigt dieser reguläre Ausdruck true an? Java Basics - Anfänger-Themen 1
S reguläre Audrücke verbinden Java Basics - Anfänger-Themen 18
N reguläre ausdruech und exception Probleme Java Basics - Anfänger-Themen 7
R Reguläre Ausdruck definieren Java Basics - Anfänger-Themen 3
S Prüfungsvorbereitung Januar ( Thema Ausdrücke ) Java Basics - Anfänger-Themen 14
B Regex Ausdrücke für Monate Java Basics - Anfänger-Themen 7
C Boolsche Ausdrücke Java Basics - Anfänger-Themen 3
A Schleifen und Boolsche Ausdrücke Java Basics - Anfänger-Themen 42
G Java Lambda Ausdrücke Java Basics - Anfänger-Themen 19
A Lambda-Ausdrücke Java Basics - Anfänger-Themen 6
G Lambda Ausdrücke Java Basics - Anfänger-Themen 2
O Lambda Ausdrücke in einem Comparator Java Basics - Anfänger-Themen 4
B Erste Schritte Boolesche Ausdrücke & Gesetze Java Basics - Anfänger-Themen 3
S Lambda Ausdrücke Streams Java Basics - Anfänger-Themen 6
D Variablen Ausdrücke Java Basics - Anfänger-Themen 6
M Lambda - Ausdrücke verstehen Java Basics - Anfänger-Themen 2
N Lambda Ausdrücke richtig schreiben Java Basics - Anfänger-Themen 4
F Methoden Lambda Ausdrücke Methodensignatur Java Basics - Anfänger-Themen 6
P Ausdrücke berechnen Java Basics - Anfänger-Themen 2
J Java 8 Lamda ausdrücke Java Basics - Anfänger-Themen 9
C Lambda Ausdrücke Java Basics - Anfänger-Themen 1
TheSorm Java 8 Lambda-Ausdrücke Java Basics - Anfänger-Themen 9
S Anweisungen Ausdrücke Java Basics - Anfänger-Themen 7
J Regex Ausdrücke im Array - Wieso werden sie nicht erkannt? Java Basics - Anfänger-Themen 4
K Ausdrücke auswerten Java Basics - Anfänger-Themen 8
C Boolsche Ausdrücke - Wo ist mein Fehler? Java Basics - Anfänger-Themen 14
M Boolsche Ausdrücke minimieren Java Basics - Anfänger-Themen 13
S arithmetische Ausdrücke prüfen Java Basics - Anfänger-Themen 11
S Datentypen Operatoren und Ausdrücke (formel richtig rechnen) Java Basics - Anfänger-Themen 8
T Ausdrucksparser für Mathematische Ausdrücke Java Basics - Anfänger-Themen 15
N Ausdrücke Java Basics - Anfänger-Themen 6
W Suche nach strings zwischen eckigen Klammern mittels regulärer Ausdrücke Java Basics - Anfänger-Themen 3
C arithmetische Ausdrücke Java Basics - Anfänger-Themen 7
M regüläre Ausdrücke, die String - Variablen und Expression Java Basics - Anfänger-Themen 5
M Ausdrücke -> Werte Java Basics - Anfänger-Themen 6
A mehrere Ausdrücke in for schleife vergleichen Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben