In Java möchte ich mehrere angegebene Zeichen nur von Anfang bis Ende abschneiden.

Ich möchte mehrere angegebene Zeichen nur von Anfang bis Ende abschneiden.

Fazit

Es sei denn, Sie können apache.commons.lang nicht verwenden Der folgende Code kommt nicht ins Spiel.

Verwenden Sie die Streifenmethode. Es ist schnell.

Ab diesem Zeitpunkt wird es nur für diejenigen empfohlen, die Dinge mögen.


Zum Beispiel. Ich möchte andere Elemente als Leerzeichen in voller Breite, Leerzeichen in halber Breite und Tabulatorzeichen erhalten.

Ich denke es ist üblich. Alles ersetzen? "Ich möchte keine Leerzeichen mit halber Breite in den Elementen ersetzen, die ich abrufen möchte." Also kann ich es nicht benutzen.

Zu dieser Zeit habe ich den folgenden Code geschrieben. Ich hoffe es hilft dem Copy / Paste Programmierer.

	private String trim(String target) {
		if (target == null || target.isEmpty() || TRIM_CHARS.isEmpty()) {
			return target;
		}
		final char[] chars = target.toCharArray();
		int trimHeadIndex = 0;
		int trimTailIndex = 0;
		for (int i = 0; i < chars.length; i++) {
			if (!TRIM_CHARS.contains(chars[i])) {
				trimHeadIndex = i;
				break;
			}
		}
		for (int t = chars.length; t > 0; t--) {
			if (!TRIM_CHARS.contains(chars[t - 1])) {
				trimTailIndex = t;
				break;
			}
		}
		return target.substring(trimHeadIndex, trimTailIndex);
	}

Obwohl TRIM_CHARS ein Array ist Zur Erleichterung des Hinzufügens zuerst mit List, Nachdem Sie den Vorgang abgeschlossen haben, setzen Sie ihn auf "Collections # unmodizableList" und setzen Sie ihn auf " Es kann besser sein, es als Konstante zu haben. (Nicht nur der letzte Modifikator)

Ich dachte noch einmal: "Ich denke, ich kann es mit regulären Ausdrücken tun." Ist es in Ordnung, weil es realisiert wurde?

Übrigens, auch wenn ich mit Ersatzpaarzeichen experimentiert habe, hat es wie erwartet funktioniert. (Unerwartet)

Recommended Posts

In Java möchte ich mehrere angegebene Zeichen nur von Anfang bis Ende abschneiden.
[Ruby] Ich möchte nur das ungerade Zeichen in der Zeichenfolge ausgeben
[Java] Ich möchte die Differenz zum Datum berechnen
[Java] Löschen Sie die angegebene Anzahl von Zeichen am Ende von StringBuilder
Ich möchte die if-else-Anweisung für bedingte Verzweigungen in Java vereinfachen
Ich möchte nur dem Poster Bearbeitungs- und Löschberechtigungen erteilen
Ich möchte mit Kotlin und Java zum vorherigen Bildschirm zurückkehren!
[Java] Ich möchte mit dem Schlüssel im Objekt eindeutig arbeiten
[Android] Ich möchte den Listener über die Schaltfläche in ListView abrufen
[Ruby] Ich möchte nur den Wert des Hash und nur den Schlüssel extrahieren
Ich möchte die IP-Adresse erhalten, wenn ich mit Java eine Verbindung zu Wi-Fi herstelle
Ich habe versucht, die Grammatik von R und Java zu übersetzen [Von Zeit zu Zeit aktualisiert]
R von Java ausführen Ich möchte rJava ausführen
Ich möchte eine E-Mail in Java senden.
rsync4j - Ich möchte rsync in Java berühren.
Ich möchte schnell von Java nach SQLite schreiben
Ich möchte den Wert in Ruby erhalten
Entwicklungsnotiz ~ Ich möchte nur das erste Bild anzeigen, das mehrmals gepostet wurde ~
Ich möchte nur die Zeit aus Zeittypdaten abrufen ...! [Strftime] * Zusätzliche Hinweise
Ich möchte so etwas wie "cls" in Java machen
Ich möchte eine TraceId in das Protokoll einbetten
Tokoro habe ich in der Migration von Wicket 7 auf 8 umgeschrieben
Ich möchte ES2015 auch in Java verwenden! → (´ ・ ω ・ `)
In der Abbildung verstandene Java-Klassen und -Instanzen
Ich möchte Bildschirmübergänge mit Kotlin und Java machen!
Ich habe versucht, die Methode der gegenseitigen Teilung von Eugrid in Java zu implementieren
Ich möchte den Pfad nach der neuen Registrierung ändern, nachdem ich mich mit mehreren Geräten angemeldet habe.
Ich möchte das in der Datenbank gespeicherte Protokoll morphologisch analysieren und in der Datenbank speichern, um Nachrichten 1 zu klassifizieren
[Android Studio] Ich möchte Einschränkungen für die in EditText [Java] registrierten Werte festlegen.
# 1_JAVA Ich möchte die Indexnummer durch Angabe eines Zeichens in der Zeichenfolge erhalten
Ich möchte die MD5-Prüfsumme einer Datei in Java finden und das Ergebnis als Zeichenfolge in hexadezimaler Notation erhalten.
JSON in Java und Jackson Teil 1 Gibt JSON vom Server zurück
[JDBC] Ich habe versucht, von Java aus auf die SQLite3-Datenbank zuzugreifen.
Ich habe versucht, die Grundlagen von Kotlin und Java zusammenzufassen
Ich möchte Zeichen konvertieren ...
Ich möchte Tomcat auf den Server bringen und die Anwendung starten
Ich möchte eine Liste mit Kotlin und Java erstellen!
Ich möchte eine Methode aufrufen und die Nummer zählen
Ich möchte eine Funktion mit Kotlin und Java erstellen!
Ich möchte die Java 8 DateTime-API (jetzt) langsam verwenden.
Korrigieren Sie den Zeichencode in Java und lesen Sie von der URL
Selbst in Java möchte ich true mit == 1 && a == 2 && a == 3 ausgeben
Ich möchte mit Java8 StreamAPI redu () einen anderen Typ als das Eingabeelement zurückgeben.
Ich möchte im gespeicherten Zustand zum selben Bildschirm wechseln
Ich möchte verschiedene Funktionen mit Kotlin und Java implementieren!
Ich möchte den Inhalt von Assets in der mit capistrano erstellten Umgebung von Grund auf neu erstellen
Ich möchte mehrere Rückgabewerte für das eingegebene Argument zurückgeben
[Java] Ich möchte überprüfen, ob die Elemente in der Liste null oder leer sind. [Collection Utils]
[Wire Mock] Ich möchte einen Stub / Mock-Server in Java einrichten und E2E-Tests durchführen.
Ich habe versucht, den Code zu implementieren, um mehrere Bilder gleichzeitig in der Watson Visual Recognition Collection in Java zu lernen
Wenn Sie die Java-Entwicklungsumgebung von Eclipse aus ändern möchten
Was ich bei der Migration von der Spring Boot 1.4-Serie zur 2.0-Serie getan habe
Was ich bei der Migration von der Spring Boot 1.5-Serie zur 2.0-Serie getan habe
Vom jungen Java (3 Jahre) bis zu Node.js (4 Jahre). Und der Eindruck, nach Java zurückzukehren
Ich habe versucht, die Methoden von Java String und StringBuilder zusammenzufassen
Ich möchte den oberen Rand in der UITableView von Grouped entfernen (schnell)
[Java] So konvertieren Sie vom Typ String in den Pfadtyp und erhalten den Pfad
Ich möchte den Wert von Attribute in Selenium of Ruby ändern