日期:2014-05-20  浏览次数:20722 次

正则表达式求解!!!大大神求解救~~~
<TD HEIGHT="30"><font color="#FF0000"><b>【推荐】</b></font><A TARGET="_blank" HREF="../wqst/66400.html" ONCLICK="return ListensSt(this.href);">【<font color=red><b>六步</b></font>】我的新娘在草原</A></TD>

我要提取里面的中文出来,该怎么写正则表达式呢?

就是要提取:【推荐】【六步】我的新娘在草原
忘路过大神帮忙!!!

------解决方案--------------------
Java code
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

String text = "<TD HEIGHT=\"30\"><font color=\"#FF0000\"><b>【推荐】</b></font><A TARGET=\"_blank\" HREF=\"../wqst/66400.html\" ONCLICK=\"return ListensSt(this.href);\">【<font color=red><b>六步</b></font>】我的新娘在草原</A></TD>";

Document doc = Jsoup.parseBodyFragment(text);

String result = doc.select("b").get(0).text() + doc.select("a").get(0).text(); // 【推荐】【六步】我的新娘在草原

------解决方案--------------------
取中文?
每个中文字符都是大于0x3400的,逐字符过滤文本就行了。
------解决方案--------------------
凑个热闹。
Java code

        String text = "<TD HEIGHT=\"30\"><font color=\"#FF0000\"><b>【推荐】</b></font><A TARGET=\"_blank\" HREF=\"../wqst/66400.html\" ONCLICK=\"return ListensSt(this.href);\">【<font color=red><b>六步</b></font>】我的新娘在草原</A></TD>";
        for (char c : text.toCharArray())
            if (c>0x1000) System.out.print(c);  //算上标点符号

------解决方案--------------------
探讨

这个方法倒是很新颖,但是我的是小众语言,没这么强大啦~~~