我有以下几行:
valor1=cadena.split("|")[0];
valor2=cadena.split("|")[1] ;
但是,我得到了null
,这意味着在进行拆分时我没有得到任何价值。
我也试过了,但用逗号:
valor1=cadena.split(",")[0];
valor2=cadena.split(",")[1] ;
这确实有效。
我有以下几行:
valor1=cadena.split("|")[0];
valor2=cadena.split("|")[1] ;
但是,我得到了null
,这意味着在进行拆分时我没有得到任何价值。
我也试过了,但用逗号:
valor1=cadena.split(",")[0];
valor2=cadena.split(",")[1] ;
这确实有效。
你好朋友我建议你这样做:
要在 java 中使用特殊字符“.”、“$”等作为分隔模式进行拆分,我们必须使用转义字符“\”作为前缀。
代码:
在你的情况下,它会是这样的:
此链接还将帮助您:
Java中的拆分方法
由于
split
类方法java.lang.String
首先接收正则表达式,因此|
(未转义的)字符被认为是交替运算符。1❍ 无排气
❍ 带排气
因此有必要逃避
|
with\
。即:❍ 没有限制
但是,指定限制可能更方便。例如,没有指定限制:
❍ 有限制 (
-1
)成绩
你必须使用
该方法
split(String regex)
使用正则表达式,因此您必须转义|
, 或者用“无或无”分隔。|
您可以使用.split("\\|")将由管道分隔的元素存储在数组中:或通过.split(Pattern.quote("|")):
得到你的价值观
也可以像这样直接获取字符串值:
或通过
.split(Pattern.quote("|"))
:不像:
这可以在不转义字符的情况下完成,
","
因为它不是特殊字符。我建议您使用 replace java.lang.String 方法将“\”替换为“,”,留下如下内容:
或者按照上面的说明进行操作。