0

ここに私の文書の一部があります:

<td align="right" valign="top"><b>Име:</b></td> <td align="left" valign="top">Павлин Евгениев Тишев</td>
<td rowspan="7" align="center" valign="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
<td align="right" valign="top"><b>Състояние:</b></td>
<td align="left" valign="top">Редовен</td>

<td align="left" valign="top">値はタイプごとに並べられているため、すべてのオカレンスの間および</td>すべてのオカレンスから文字列を 1 つずつ抽出したいと考えています。

私はこのコードを使用しています(inは、上に示されている入力文字列全体です)

Pattern p = Pattern.compile("<td align=\"left\" valign=\"top\">(.*?)</td>");
        Matcher m = p.matcher(in);

        if (m.matches()) {
            student.setName(m.group(1));
            student.setState(m.group(2));
        }

しかし、それはifに入ることさえありません

4

1 に答える 1

2

これを使用する必要があります:

while (m.find()) {
            student.setName(m.group(1));
            student.setState(m.group(2));
        }

を使用して使用しない理由を正確に理解するには、これをお読みください。find()matches()

于 2012-05-27T10:39:30.310 に答える