如何在java中转义+字符?

San*_*ana 10 java string escaping

如何在java中使用split函数调用时转义+字符?

分裂声明

String[] split(String regularExpression)
Run Code Online (Sandbox Code Playgroud)

多数民众赞成我所做的

services.split("+"); //says dongling metacharacter

services.split("\+"); //illegal escape character in string literal
Run Code Online (Sandbox Code Playgroud)

但它允许做这样的事情

String regExpr="+";
Run Code Online (Sandbox Code Playgroud)

Kon*_*kov 6

由于它+是一个正则表达式元字符(表示出现1次或更多次),你必须使用它来逃避它\(它也必须被转义,因为它是在描述制表符时使用的元字符,新的行字符\r\n和其他),所以你必须这样做:

services.split("\\+");
Run Code Online (Sandbox Code Playgroud)