Traitement des chaînes Java

Ce que j'ai appris aujourd'hui

--Méthode utilisée pour traiter les chaînes

Méthodes pouvant être utilisées pour le traitement des chaînes

java


equals(); #Si le contenu est égal
equalsIgnoreCase(); #Ne faites pas la distinction entre les grandes et les petites lettres
length(); #nombre de mots
isEmpty(); #Que ce soit un personnage de
contains(); #S'il faut inclure en partie
startsWith(); #Y a-t-il d'abord un mot-clé
endsWith(); #Y a-t-il un mot-clé à la fin
indexOf(); #Dans quel caractère le mot-clé apparaît-il de l'avant
lastIndexOf(); #Recherchez à l'arrière et dans quel caractère le mot-clé apparaît à l'avant
charAt(); #Découpez un caractère
substring(); #Découpez plusieurs personnages
toLowerCase(); #Convertir les majuscules en minuscules
toUpperCase(); #Convertir les minuscules en majuscules
trim(); #Retirez les blancs avant et après

--Concaténation de personnages

Jusqu'à présent, nous avons appris que les chaînes de caractères sont concaténées avec l'opérateur «+», mais que l'opérateur «+» rejette l'ancienne instance lors de la concaténation et crée et stocke une nouvelle instance avec new. En d'autres termes, faire beaucoup de concaténation signifie créer beaucoup de nouvelles instances, ce qui met une lourde charge sur la JVM.

Par conséquent, vous pouvez utiliser StringBuilder pour accélérer le processus. String Builer étend le tampon sans utiliser new.

java


#Comment utiliser
StringBuilder sb = new StringBuilder(); #Affectez les chaînes de la classe StringBuilder à la variable sb.
sb.append("Bonjour").append("Bonjour").append("Est"); #Il est ajouté à la variable sb de la classe StringBuilder par la méthode append.
String s = sb.toString(); #La chaîne de caractères concaténée est retirée et affectée à la variable s.
System.out.println(s); #Résultat d'exécution=> "Bonjour"

Expressions régulières

Utilisez la méthode matches ().

java


❶ Caractères normaux:Doit être une correspondance exacte
String s = "Java";
s.matches("Java");  => true  #C'est une correspondance exacte.
s.matches("JavaScript");  => false  #Le script ne correspond pas.
s.matches("java"); => false  #Premier personnage(J)Est en lettres minuscules.


❷ Période:Toute lettre simple
"Java".matches("J.va"); => true  #période(.)Est n'importe quel caractère, donc il peut être remplacé par n'importe quel caractère.


❸ Astérisque:Répéter 0 fois ou plus du caractère précédent
"Jaaaaaaaaava".matches("Ja*va"); => true #La lettre précédente, c'est-à-dire «a», peut être répétée un nombre illimité de fois.
"Que xx019".matches(".*"); => true #Puisque le caractère immédiatement avant peut être n'importe quel caractère avec un point, c'est une instruction pour autoriser toutes les chaînes de caractères.


❹ Support d'onde:Répétez le nombre de fois spécifié
"HELLLO".matches("HEL{3}O"); => true #Vrai car cela signifie que le caractère précédent est répété 3 fois.
#Comment spécifier le nombre de répétitions
#Description du motif:sens
#{n}       :Répéter n fois le caractère précédent
#{n,}      :Répéter n ou plus du caractère précédent
#{n,m}     :Répéter n ou plus et m ou moins du caractère précédent
#?         :Répéter 0 ou 1 du caractère précédent
#+         :Une ou plusieurs répétitions du personnage précédent


❺ Crochets:L'un ou l'autre personnage
#Symbole du crochet carré[]S'il y a une partie entourée de, cela signifie qu'elle doit s'appliquer à n'importe quel caractère dans la parenthèse carrée.
"Java".matches("Jav[abc]"); => true #En commençant par Jav, c'est OK si le 4ème caractère s'applique à l'un des abc.


❻ Trait d'union entre crochets:Tout caractère dans la plage spécifiée
"java".matches("[a-z]{4}"); => true #a~Spécifiez une plage de z et comparez-la à une chaîne qui se répète quatre fois.
#Exemples de classes de caractères prédéfinies
#Description du motif:sens
#¥d        :N'importe quel chiffre([0-9]Pareil que)
#¥w        :Alphabet / nombre / barre inférieure([a-zA-Z_0-9]Pareil que)
#¥s        :Caractère vierge(Espaces, caractères de tabulation, caractères de saut de ligne, etc.)


❼ Chapeau(^)Et dollar($):Début et fin
#Le chapeau représente le début et le dollar la fin.
"Java".matches(^J.*a$); => true #Signifie une chaîne de n'importe quelle longueur, commençant par J et se terminant par a.

--split () méthode: chaîne divisée

java


#Une chaîne de caractères est une virgule(,)Ou deux-points(:)Peut être divisé avec.
String s = "abc,def:ghi";
String[] words = s.split("[,:]"); 
# []Dans(,)Quand(:)を指定するこQuandで、(,)Quand(:)の部分をsplitメソッドで区切るQuandいう意味になる。

--replaceAll () méthode: remplace la chaîne

java


#Vous pouvez remplacer la partie de la chaîne de caractères qui correspond au modèle par une autre chaîne de caractères.
String s = "abc,def:ghi";
String w = s.replaceAll("[beh]","X"); #[]S'il y a un caractère spécifié dans, il sera remplacé par X.
System.out.println(w); #Résultat d'exécution=> aXc,dXf:gXi

Méthode --format (): Assemble une chaîne formatée

java 


String.format("%d mois%jour j%s.",3,26,"Apprendre Java");
#Résultat d'exécution=>Le 26 mars, j'ai appris java.
#Le premier argument est le modèle de la chaîne de caractères à assembler.(Chaîne formatée)。
# %La partie symbolique est appelée un espace réservé et est l'endroit où les valeurs spécifiques spécifiées dans le deuxième argument et les suivants sont versées dans l'ordre.

#Format d'espace réservé
#%Qualification,chiffre,Moule(Kamma pour une compréhension facile(,)Il est séparé par, mais en réalité il n'a pas besoin d'être séparé)
#Qualification(virgule(,) => 3桁ごとにvirguleを入れる; 0 =>Remplissez l'espace libre avec 0; - =>Justifié à gauche(Nombres); + =>Affichage forcé du code)
#chiffre(Spécifiez le nombre de chiffres affichés. n.Lorsqu'il est spécifié au format m, il est affiché dans les n chiffres entiers et m chiffres après la virgule décimale.)
#Moule(d =>entier; s =>Chaîne; f =>quelques; b =>Valeur booléenne)

Recommended Posts

Traitement des chaînes Java
Chaîne Java
[Java] Remplissage de la chaîne de caractères
[Java] Traitement multi-thread
Chaîne divisée (Java)
[Java] Traitement de flux
traitement itératif java
Remplacement multiple de chaîne Java
[Note] Java: recherche de chaînes de caractères
[Note] Java: enquête sur les chaînes de caractères
Traitement des appels du constructeur JAVA
Java aléatoire, divers traitements
[Java] Traitement multi-thread - Contrôle exclusif
Sous-chaîne de classe Java inflexible String
Réflexion sur la manipulation de chaînes Java
[Java] À propos de String et StringBuilder
Java
[Java] Stream API - Traitement de l'arrêt du flux
[Java] Stream API - Traitement intermédiaire de flux
[Java] Méthode d'implémentation du traitement du minuteur
Chaîne
Traitement parallèle mesuré avec Java
Comprendre le traitement parallèle Java (Introduction)
Java
Résumé du traitement des erreurs Java
Diverses méthodes de la classe Java String
Traitement de la date en Java (LocalDate: Initialization)
Déléguer certains traitements Java à JavaScript
[Java] Traitement en boucle et table de quatre-vingt-dix-neuf
Exécutez node.js depuis Android Java (traitement)
[Traitement × Java] Comment utiliser les variables
Code de création de chaîne arbitraire par Java
Traitement serveur avec Java (Introduction partie 1)
Traitement de flux d'inversion de liste Java étonnamment profond
Flux de traitement de base de Java Stream
A propos du traitement de la copie de fichiers en Java
Remarques sur le traitement des threads Android (java)
Etudier Java 8 (String Joiner et Join)
[Java] Comparaison correcte du type String
Suppression de fichiers à l’aide du traitement récursif [Java]
[Traitement × Java] Comment utiliser les tableaux
[Java] Mémo de méthode de mesure du temps de traitement
[Java] Types d'exception et traitement de base
[Java] Divise une chaîne de caractères par un caractère spécifié
Apprendre Java (0)
Étudier Java ―― 3
[Java] tableau
Java protégé
[Java] Annotation
Module [Java]
Tableau Java
Étudier Java ―― 9
Java scratch scratch
Astuces Java, astuces
Conversion de type de données de date Java (date, calendrier, chaîne)
Conversion pleine largeur → demi-largeur avec Java String (kana pleine largeur → kana demi-largeur)
Méthodes Java
Méthode Java
java (constructeur)
Concernant la comparaison d'équivalence de type de chaîne en Java
Tableau Java