Как убрать пробел и да sh между тремя телефонными номерами и преобразовать в список - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть один телефонный номер строки.

String phNum = "01 12 1234 123 - 124 - 125"

Я хочу изменить формат следующим образом.

List<String> listPhone= ("01121234123","01121234124","01121234125")

Я не знаю, какой метод использует обрезку или регулярное выражение, которое является best.Any решений?

1 Ответ

1 голос
/ 21 апреля 2020

Привет @HZan, надеюсь, у тебя все хорошо, я не так хорош в java, но ты можешь использовать kotlin эквивалент фрагмента в java, чтобы получить желаемый результат, если функция сворачивания недоступна, ты можешь используйте forEach или любой другой шаблон аккумулятора для достижения того же самого,

val phNum = "01 12 1234 123 - 124 - 125"
val phoneArray = phNum.toCharArray().filter{it.toString().isNotBlank()}
val prefix = phoneArray.subList(0,8).joinToString("")
val varientArray = phoneArray.subList(8,phoneArray.size).joinToString("").split("-")
val result = varientArray.fold(mutableListOf<String>()){ list , suffix -> 
    list.add("$prefix$suffix")
    return@fold list
}
println(result)
...