Xử lý chuỗi
Mô tả
Cuối tuần này, Fortis Hotel đón hàng trăm khách tham dự hội thảo kinh tế. Quầy lễ tân nhận được một mớ danh sách đăng ký ghi chép tay lộn xộn: số thì có người ghi 0901234567, người lại viết 090.123.4567, có kẻ thậm chí nhầm mất một số, chỉ còn 901234567.
Để hệ thống quản lý khách sạn nhận diện chính xác, bạn cần viết một hàm chuẩn hóa từng chuỗi số điện thoại về một khuôn mẫu duy nhất. Quy trình như sau:
- Bỏ mọi ký tự không phải chữ số (dấu chấm, dấu gạch, khoảng trắng, dấu ngoặc...).
- Nếu chuỗi số thu được dài hơn 10 ký tự, chỉ giữ lại 10 ký tự đầu tiên.
- Nếu chuỗi số thu được ngắn hơn 10 ký tự, hãy thêm chữ số
'0'vào đầu cho đủ 10 ký tự. Nếu dài đúng 10 thì giữ nguyên. - Cuối cùng, chèn dấu gạch ngang
'-'để tạo định dạng:XXX-XXX-XXXX(trước dấu gạch đầu là 3 số, giữa hai dấu gạch là 3 số, cuối cùng là 4 số).
Đầu vào
- Một chuỗi
s(kiểu chuỗi) biểu diễn số điện thoại thô mà khách hàng ghi trên phiếu đăng ký.
Đầu ra
- Trả về một chuỗi duy nhất đã được chuẩn hóa theo định dạng
XXX-XXX-XXXX.
Ràng buộc
- Độ dài chuỗi
skhông vượt quá 50 ký tự. - Chuỗi
scó thể chứa chữ cái, dấu câu, khoảng trắng hoặc bất kỳ ký tự nào, nhưng chắc chắn có ít nhất 1 chữ số. - Các chữ số trong
sđều nằm trong khoảng từ'0'đến'9'.
Ví dụ
Ví dụ 1:
- Đầu vào:
"090.123.4567" - Đầu ra:
"090-123-4567" - Giải thích: Bỏ các dấu chấm, ta giữ lại đúng 10 chữ số
0901234567. Vì đã đủ 10 ký tự nên ta chỉ cần chèn hai dấu gạch ngang vào sau vị trí thứ 3 và thứ 6.