【问题标题】:How to remove line breaks when using Regex Pattern.compile [duplicate]使用 Regex Pattern.compile 时如何删除换行符 [重复]
【发布时间】:2020-04-27 09:50:39
【问题描述】:

我正在尝试从 HTML 中提取一些信息,这些信息被上面一行和下面一行的标签包围。当我运行正则表达式 pattern.compile 时,最终结果会返回我想要的字符串,以及之前和之后的空格,这是我不想要的。

谁能帮我找到一种方法来摆脱换行符并返回一个由“,”分隔的字符串数组?

这是我的 HTML:

<div class="name">
                        Jonna Lundell
                    </div>

这是我的 Java 代码: 其中 result 是 HTML 文本字符串。

html = result;

    Pattern p = Pattern.compile("<div class=\"name\">(.+?)</div>", Pattern.DOTALL);
    Matcher m = p.matcher(html);

    while (m.find()) {
        nameList.add(m.group(1));}

Log.i("Names ", String.valueOf(nameList));

返回:

I/Names: [
                            Name 1
                        , 
                            Name 2
                        , 
                            Name 3
                        , 
                            Name 4
                        , 
                            Name 5
                        , 
                            Name 6
                        ]

【问题讨论】:

  • m.group(1) => m.group(1).trim().

标签: java android arrays regex


【解决方案1】:

使用 trim() 方法:

while (m.find()) {
    nameList.add(m.group(1).trim());
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多