search
Home类库下载java类库Summary of Java String.split() usage

There is a String.split() method in the java.lang package, and the return is an array.

I have used some of them in my application. Let me summarize them for your reference only:

1. If you use "." as a separator If so, it must be written as follows, String.split("\."), so that it can be separated correctly. String.split(".") cannot be used;

2. If "|" is used as the separation, it must It is written as follows, String.split("\|"), so that it can be separated correctly. String.split("|") cannot be used;

"." and "|" are both escape characters and must be Add "\";

3. If there are multiple delimiters in a string, you can use "|" as a hyphen, for example, "acount=? and uu =? or n=?" To separate them, you can use String.split("and|or");

When using the String.split method to separate strings, if the separator uses some special characters, we may not get the expected results.

Let’s look at the instructions in jdk doc

public String[] split(String regex)

Splits this string around matches of the given regular expression.

The parameter regex is a regular-expression matching pattern rather than a simple String , it may produce unexpected results for some special characters. For example, if you test the following code and use vertical bars | to separate strings, you will not get the expected results

Java code

String[] aa = "aaa|bbb|ccc".split("|");

//String[] aa = "aaa|bbb|ccc".split("\|"); This way you can get the correct result

for (int i = 0; i

System.out.println("--"+aa[i]);

}

Using vertical * to separate strings will throw a java.util.regex.PatternSyntaxException exception, as will using the plus sign +.

Java code

String[] aa = "aaa*bbb*ccc".split("*");

//String[] aa = "aaa|bbb|ccc".split(" \*"); Only in this way can you get the correct result                                                                                                                                                                                           ​]);

}

Obviously, + * is not a valid pattern matching rule expression, and you can get the correct result after escaping it with "\*" "\+".

"|" can be executed when separating strings, but it is not the intended purpose. The correct result can be obtained after escaping "\|".

Also, if you want to use the "" character in a string, you also need to escape it. First of all, to express the string "aaaabbbb", you should use "aaaa\bbbb". If you want to separate it, you should use this to get the correct result.

Java code

String[] aa = "aaa\bbb\bccc".split("\\");

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft