Diviser une chaîne en Java sur plus d'un symbole
Je veux découper une chaîne lorsque, à la suite des symboles de la rencontre "+,-,*,/,="
Je suis en utilisant la fonction de répartition, mais cette fonction peut ne prendre qu'un seul argument.En outre, il n'est pas de travail sur le "+".
Je suis à l'aide de code suivant:-
Stringname.split("Symbol");
Grâce.
source d'informationauteur Saumyaraj
Vous devez vous connecter pour publier un commentaire.
String.split
prend une expression régulière comme argument.Cela signifie que vous pouvez alterner quelle que soit texte ou symbole de l'abstraction dans l'un des paramètres afin de diviser votre
String
.Voir la documentation ici.
Voici un exemple dans votre cas:
De sortie:
Notes:
Pattern
s doit être double échappement avec\\
. Modifier: Pas nécessaire ici.[]
crochets dans le modèle indique un caractère de classe.Pattern
s ici.Vous pouvez utiliser une expression régulière:
Remarque:
-
doit être placé en première ou en dernière position pour s'assurer qu'il n'est pas considéré comme une gamme de séparateur.Vous avez besoin d'Expression Régulière. Addionaly vous avez besoin de la regex
OR
opérateur:Pour cela, vous devez utiliser une regex déclaration. La plupart des symboles que vous avez énumérés sont réservés à l'expression régulière, de sorte que vous aurez à s'échapper avec
\
.Un très expression de base serait
\+|\-|\\|\*|\=
. Relativement facile à comprendre, chaque symbole que vous voulez est échappé avec\
et chaque symbole est séparé par la|
(ou des) symbole. Si, par exemple, vous vouliez ajouter^
ainsi, tout ce que vous devez faire est d'ajouter|\^
à celle de l'instruction.Pour les tests et rapide des expressions, j'aime utiliser http://www.regexpal.com