Для части моего назначения Java я должен выбрать все записи, имеющие определенный код области. У меня есть пользовательские объекты в пределах ArrayList
, например ArrayList<Foo>
.Как получить часть номера, которая находится в скобках в Java?
Каждый объект имеет переменную типа String phoneNumber. Они отформатированы как «(555) 555-5555»
Моя цель состоит в том, чтобы искать через каждый пользовательский объект в ArrayList<Foo>
(назовет его listOfFoos
) и поместите объекты с кодом города «616» в temporaryListOfFoos
ArrayList<Foo>
.
Я изучил токенизаторы, но не смог получить синтаксис правильно. Я чувствую, что то, что мне нужно сделать, похоже на этот пост, но поскольку я только пытаюсь получить первые 3 цифры (и мне все равно, что остальные 7), это действительно не дало мне точно, что я искал. Ignore parentheses with string tokenizer?
То, что я сделал в качестве временной работы вокруг, был ...
for (int i = 0; i<listOfFoos.size();i++){
if (listOfFoos.get(i).getPhoneNumber().contains("616")){
tempListOfFoos.add(listOfFoos.get(i));
}
}
Это работает для наших текущего набора данных, однако, если бы было 616 где-нибудь еще в телефонных номерах [как «(555) 616-5555 "], очевидно, что это не сработает должным образом.
Если кто-нибудь может дать мне совет о том, как получить только первые 3 цифры, игнорируя круглые скобки, я был бы очень признателен.