【问题标题】:how to split a string across '\' using split function? [duplicate]如何使用拆分函数将字符串拆分为“\”? [复制]
【发布时间】:2016-09-30 06:59:48
【问题描述】:

我是java语言的新手。 我想使用字符串库中的拆分函数将字符串“mandar\jitendra\sadye”拆分为 3 个字符串“mandar”、“jitendra”和“sadye”。 我用来分割字符串的程序如下:

public class string 
{
    public static void main(String[] args) 
    {
        String mandar="mandar\\jitendra\\saye";
        String[] words=mandar.split("[\\]");
        for(int a=0;a<words.length;a++)
        {
            System.out.println(words[a]);
        }
    }
}

但是这个程序给出了这个错误 如果我用任何其他转义序列(如'\0')替换'\',那么程序运行得很好 我已经尝试使用 ['\'] [] [\] ['\'] [\] 但这些令牌都不适合我。 那么是否有一些特殊的方法可以将字符串拆分为'\'?

【问题讨论】:

    标签: java regex string split


    【解决方案1】:

    您需要正确转义\。一次用于 java,一次用于正则表达式引擎。

        String mandar="mandar\\jitendra\\saye";
        String[] words=mandar.split("\\\\");
        for(int a=0;a<words.length;a++)
        {
            System.out.println(words[a]);
        }
    

    O/P:

    mandar
    jitendra
    saye
    

    我会考虑的另一种方法是使用Pattern.quote()

    public static void main(String[] args) {
        String mandar="mandar\\jitendra\\saye";
        String[] words=mandar.split(Pattern.quote("\\"));
        for(int a=0;a<words.length;a++)
        {
            System.out.println(words[a]);
        }
    }
    

    O/P:

    mandar
    jitendra
    saye
    

    【讨论】:

      猜你喜欢
      • 2013-01-14
      • 1970-01-01
      • 2019-06-11
      • 2021-12-07
      • 2018-05-10
      • 2012-02-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多