【问题标题】:Java String Class Methods , split & replaceJava字符串类方法,拆分和替换
【发布时间】:2014-03-04 23:06:15
【问题描述】:

所以伙计们,我正在观看一个代码,该代码从网站服务器顶部区域返回一个字符串到 int 如果您的服务器获得最多的选票,那么服务器的顶级区域网站将使用选票,您将获得排名第一,所以我从该网站获得的是服务器以字符串形式获得的选票(我找到了脚本在另一个论坛中)并自己尝试测试或理解它,我不明白一件事 在这个脚本中;

String tozponeURL = "http://l2topzone.com/lineage2/server-info/9974/L2Xerus.html";
        URLConnection con = new URL(tozponeURL).openConnection();
        con.addRequestProperty("User-Agent", "Mozilla/4.76");
        isr = new InputStreamReader(con.getInputStream());
        br = new BufferedReader(isr);

        String line;
        while((line = br.readLine()) != null )
        {
             if (line.contains("<div class=\"rank\"><div class=\"votes2\">Votes:<br>"))
                 {
                    int votes = Integer.valueOf(line.split("<div class=\"rank\"><div class=\"votes2\">Votes:<br>")[1].replace("</div></div>", ""));
                    return votes;
                 }

那么这个 [1] 在 replace 方法中是什么?看不懂

请帮助我!我搜索了文档但无法理解

【问题讨论】:

  • line.split 返回一个数组。 [1] 访问数组的第二个元素。
  • @AntonH 这应该是一个答案而不是评论。
  • @IanRoberts 我知道,但是对于这样的小问题,我不会被打扰。这样我错过了很多代表......

标签: java string replace split


【解决方案1】:

当一个字符串被拆分时,它会创建一个包含每个标记的数组。 line[1] 指的是 String 行中的第二个标记,然后在该特定标记上调用 replaceAll()。

【讨论】:

    【解决方案2】:

    java split 方法返回一个字符串数组

    line.split("....")
    

    所以:

    line.split("....")[1] 
    

    是数组索引1处的字符串

    【讨论】:

    • 所以在我的情况下 0 是这个?
      投票:
      1 是下一个?
    • 不,它每次看到"&lt;div class=\"rank\"&gt;&lt;div class=\"votes2\"&gt;Votes:&lt;br&gt;" 时都会拆分行。一个愚蠢的例子是字符串aaa&lt;div class="rank"&gt;&lt;div class="votes2"&gt;Votes:&lt;br&gt;bbb[0] = "aaa"[1] = "bbb"
    • 没有。 split() 围绕给定正则表达式的匹配拆分此行字符串。在此处查看文档:docs.oracle.com/javase/6/docs/api/java/lang/…@Nick
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签