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

Summary of Java String.split() usage

Nov 26, 2016 am 09:11 AM

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 of this Website
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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)