Entfernen Sie einen Teil des Strings nach einer Regex-Übereinstimmung in Java
Ich möchte einen Teil eines Strings entfernen, der meiner Regex entspricht.
Ich versuche, ein Organisationsprogramm für Fernsehsendungen zu erstellen, und ich möchte den Namen nach dem Staffel- und Episodenmarker in der Form SXXEXX abschneiden, wobei X eine Ziffer ist.
Ich habe das Regex-Modell ziemlich leicht verstanden, um "[Ss] \ d \ d [Ee] \ d \ d" zu erstellen, das richtig passen sollte.
Ich möchte die Matcher-Methode end () verwenden, um den letzten Index in der Zeichenfolge des Matches abzurufen, aber es scheint nicht so zu funktionieren, wie ich es mir vorgestellt habe.
Pattern p = Pattern.compile("[Ss]\\d\\d[Ee]\\d\\d");
Matcher m = p.matcher(name);
if(m.matches())
return name.substring(0, m.end());
Wenn mir jemand sagen könnte, warum dies nicht funktioniert, und einen geeigneten Weg vorschlagen könnte, wäre das großartig. Vielen Dank.