我正在开发一款能够在Java中从www.mangafox.me下载漫画的脚本。
不幸的是,该网站没有任何API,因此我使用了一些古老的方法来获取我的数据。但是,可以获取每个漫画章节的xml。例如:http://mangafox.me/rss/nisekoi.xml。
我解析这个xml,并使用title
标签来获取一个章节的编号和相关的卷数。
例如,我有一个像这样的字符串:Nisekoi Vol TBD Ch 215
,我想只保留TBD
和215
。
目前,我用空格替换所有非数字字符,并使用以下代码保留每个出现的TBD
:
String title = "Nisekoi Vol TBD Ch 215";
title = title.replaceAll("[^0-9.\bTBD\b]+", " ").trim();
title
等于"TBD 215"
,然后我使用title.split(" ")
来获取卷和章节。这个方法在处理以T开头的漫画时会出现问题。显然,大写字母T没有被替换成空格。
因为我不太擅长正则表达式,所以如何在Java中用空格替换每个不是数字、小数点(用于小数)或单词"TBD"的字符?
谢谢!
\\d+$
,然后在后面加上TBD
+你的数字
。 - Jan