Book_position1_positon2_position3 구조의 파일이 있습니다.
Book_unknow_unknow_unknow
Book_unknow_1_2
Book_unknow_unknow_2
Book_unknow_1_unknow
Book_EU_1_2
위치 2와 위치 3에 알 수없는 항목이 하나 이상있는 모든 항목을 제거하고 위치 1에 알 수없는 항목을 유지하고 싶습니다.
따라서 필터링 된 결과는 다음과 같아야합니다.
Book_unknow_1_2
Book_EU_1_2
내 코드는 다음과 같습니다.
Iterator<Map.Entry<String, Book>> iter = books.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry<String, Book> entry = iter.next();
if(entry.getKey().contains("_UNKNOW")) {
iter.remove();
}
}
안타깝게도이 코드는 모든 '알 수없는'항목을 제거합니다. Book_unknow_1_2를 그대로 유지하는 방법은 무엇입니까?
다음과 같이 시도하십시오.
Iterator<Map.Entry<String, Book>> iter = books.entrySet().iterator();
while (iter.hasNext())
{
Map.Entry<String, Book> entry = iter.next();
if ( entry.getKey().matches("(.+_){2,}unknown.*") )
{
iter.remove();
}
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다