字符串拆分Java不起作用[重复]

Posted

技术标签:

【中文标题】字符串拆分Java不起作用[重复]【英文标题】:String split Java not working [duplicate] 【发布时间】:2014-12-21 11:23:44 【问题描述】:

我已经尝试与其他一些文本拆分,它在那里工作正常,但不是在这里。谁能告诉我我在这里做错了什么?

private static String fileName = "jjjj.txt";

private static String userName = "xxxx";
private static String password = "yyyy";
public static void main(String args[])

    String info = "UserName" +"|"+ userName + "|" + password + "|" + fileName;
    String tempStr[] = info.split("|");
    System.out.println(tempStr[0]);
    System.out.println(tempStr[1]);
    System.out.println(tempStr[2]);
    System.out.println(tempStr[3]);

我得到的输出是:

U
s
e

我应该怎么做才能得到输出:

UserName
xxxx
yyyy
jjjj.txt

【问题讨论】:

管道,|,是一个正则表达式保留字符。使用\\| 你为什么要构建一个字符串然后拆分它?您可以简单地使用tempStr[] = "UserName", userName, password, fileName;。或者至少使用不同的分隔符。 【参考方案1】:

您必须在正则表达式中转义 |。这应该有效:

String tempStr[] = info.split("\\|");

【讨论】:

以上是关于字符串拆分Java不起作用[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Excel vba拆分功能不起作用

仅在第一个实例上拆分字符串 - java

Java字符串拆分:“忽略”拆分参数[重复]

Python - 用于将文本拆分为句子的正则表达式(句子标记)[重复]

在java中拆分多个字符串[重复]

数字后的Java正则表达式拆分字符串[重复]