Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.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_Android_Api - Fatal编程技术网

删除java中的特殊字符

删除java中的特殊字符,java,android,api,Java,Android,Api,嗨,我正在试图找出一种方法,从GoogleFeedAPI返回的结果中删除标记。他们的结果是 Breaking \u003cb\u003eNews\u003c/b\u003e Updates 我们如何删除这些字符? 我不确定正则表达式是更好(还是更差)。有人知道如何移除这些吗?Google没有提供从Java结果中删除标记的选项。最好的解决方案是使用JSON转换数据 JSON.parse(JSON.stringify({a : '<put your string here>'})

嗨,我正在试图找出一种方法,从GoogleFeedAPI返回的结果中删除标记。他们的结果是

   Breaking \u003cb\u003eNews\u003c/b\u003e Updates
我们如何删除这些字符?
我不确定正则表达式是更好(还是更差)。有人知道如何移除这些吗?Google没有提供从Java结果中删除标记的选项。

最好的解决方案是使用JSON转换数据

JSON.parse(JSON.stringify({a : '<put your string here>'}));
JSON.parse(JSON.stringify({a:'}));

这将是合适的,因为您将从Google API获得的数据将以JSON的形式出现。

我会用

String.replaceAll("\\p{Cntrl}","")

您可以使用下面的正则表达式..

String str = "Breaking \u003cb\u003eNews\u003c/b\u003e Updates";
str = str.replaceAll("\\<(.*)?\\>(.*)\\</\\1\\>", "$2");
System.out.println(str);
  • \\
    匹配第一个开始标记-
  • \\
    匹配相应的结束标记-
  • \\1
    用于反向引用标签内容,以便匹配正确的标签对

因此,
news
->在本例中,
不会被删除。

这是HTML<代码>\u003cb\u003e转换为

您需要使用HTML解析器,因为正则表达式不能完全解析HTML

有了像Jsoup这样的库,您就可以像这样做了

String data = Jsoup.parse(html).body().text();

这会让你获得“突发新闻更新”

你能明确地发布你想要删除的标签吗?你想替换这些标签吗:-
\u003c
\u003e
?是的,确切地说,我们如何删除这些字符?使用JSON解析提要数据阅读谷歌指南我只像开发者指南一样进行解析,但我还是遇到了同样的问题,我想\u003cb不是Java,它必须是json,所以这是我能做的最好的了
String data = Jsoup.parse(html).body().text();