Ich konvertiere eine Excel-Datei in eine CSV, und das zu einem String.Regulärer Ausdruck in Java funktioniert nicht
Das Problem ist, dass ein regulärer Ausdruck nicht richtig funktioniert
Ich mag diese Art von Text erkennen:
MYW Pkg, MYW Pkg + Quick-Service-Restaurants, MYW Pkg + Restaurants, MYW Pkg + Deluxe Restaurants,
Room + Tickets + Quick Service Gastronomie
ich habe ein Array o f Zeichenfolge. Also muss ich dafür ein Muster wissen, ich versuche, dies aber es ist es nicht erkennen:
Pattern.compile("([A-Z]{3})+(\\s)+([A-Za-z]{3})+(\\s)+(\\+)");
Ich versuche, „+ MYW Pkg“ entsprechen zum Beispiel Wissen Sie, warum es nicht funktioniert ?
mehr Code:
Kette ist das Array mit den Werten wie "MYW Pkg"
Pattern patPackageDescription = Pattern.compile("([A-Z]{3})+(\\s)+([A-Za-z])+(\\s)+(\\+)");
for (int i = 0; i < chain.length; i++) {
Matcher matPackageDescription = patPackageDescription
.matcher(chain[i]);
if (matPackageDescription.matches()) {
String space = String.format("%1$-" + 50 + "s",
chain[i].toString());
a.append(space + "|\n");
}
}
Grüßen.
Welche Teile der obigen Zeichenfolge Sie zu entsprechen versuchen. Zwei Dinge, die ich hervorheben werde, sind 1) '(?)' Ist seltsam/höchstwahrscheinlich nicht notwendig und 2) du suchst nach '[AZ] +' direkt vor '\\ +' (obwohl zwischen ' Pkg' und '+'). – Sam
@Sam Ich versuche, mindestens "MYW Pkg +" zu entsprechen, und Anubhava (?) Ist nicht für Groß-und Kleinschreibung empfindlich? – arnoldssss
Inline case insensitive Modifier wird aussehen wie '(? I: [AZ])', aber Sie können einfach '[A-Za-z]' –