Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Java字符串文本中去除某些字符_Java_Regex_String_Replace - Fatal编程技术网

如何从Java字符串文本中去除某些字符

如何从Java字符串文本中去除某些字符,java,regex,string,replace,Java,Regex,String,Replace,我有一张这样的字符串图片: SomeText Here]]> 我想去掉CDATA标签,这样我就可以得到: SomeText此处 如何在Java中使用anymethod(最好是正则表达式)实现这一点 编辑: 如果不是CDATA,它可以是任何文本,我只想提取以下内容: 这里有些文字怎么样 source.replaceAll("\\<!\\[CDATA\\[","").replaceAll("\\]\\]\\>", "") source.replaceAll(“\\”,“”) 或 so

我有一张这样的字符串图片:

SomeText Here]]>

我想去掉CDATA标签,这样我就可以得到:

SomeText此处

如何在Java中使用anymethod(最好是正则表达式)实现这一点

编辑: 如果不是CDATA,它可以是任何文本,我只想提取以下内容:
这里有些文字

怎么样

source.replaceAll("\\<!\\[CDATA\\[","").replaceAll("\\]\\]\\>", "")
source.replaceAll(“\\”,“”)

source.replaceAll(“\\”,“”);
或者使用模式匹配

    Pattern p = Pattern.compile("\\<!\\[CDATA\\[|\\]\\]>"); 
    String s = "<![CDATA[<explanation>SomeText Here</explanation>]]>";
    Matcher m = p.matcher(s); 
    String extracted = "";

    while (m.find()) { 
       extracted = m.replaceAll("");
    }


        System.out.println(extracted );
Pattern p=Pattern.compile(\\”;
字符串s=“SomeText Here]]>”;
匹配器m=匹配器p;
字符串提取=”;
而(m.find()){
提取=m.replaceAll(“”);
}
System.out.println(提取);

什么是包装文字不是CDATA如果是foo或其他任意文字怎么办?实际上这似乎不起作用谢谢,我做了一些更改。如果你有一个要替换的东西的列表,请基本上复习一下,只需将它们添加到regexThanks中,就可以了
    Pattern p = Pattern.compile("\\<!\\[CDATA\\[|\\]\\]>"); 
    String s = "<![CDATA[<explanation>SomeText Here</explanation>]]>";
    Matcher m = p.matcher(s); 
    String extracted = "";

    while (m.find()) { 
       extracted = m.replaceAll("");
    }


        System.out.println(extracted );