次のコードで、使用可能なパターンのすべてのトークンが見つかると思います。シェル コマンドを解析するiwlist wlp3s0 scanning
ため、常に複数のアクセス ポイントが存在します (パターンの繰り返し)。どういうわけかそれらをすべて解析する必要があります。
Scanner s = new Scanner(commandOutput);
String pattern = ".*?Address: (\\S*) .*?Channel:(\\d*) .*?Frequency:(\\S*) .*?Quality=(\\d*)/(\\d*) .*?Signal level=-(\\d*)";
//s.findInLine(pattern);
while(true){
s.findInLine(pattern);
MatchResult result = s.match();
for (int i = 1; i <= result.groupCount(); i++) {
System.out.println(result.group(i));
}
}
しかし、次の例外がスローされます: java.lang.IllegalStateException
.
while(true)
例外の代わりにループを反復処理しているときに、さらに一致するかどうかを確認するにはどうすればよいですか?