format the number to a standard version

This commit is contained in:
2024-11-25 11:30:09 +03:00
parent 267132b956
commit f666b1e960
2 changed files with 23 additions and 1 deletions

View File

@@ -3,6 +3,7 @@ package common
import (
"fmt"
"regexp"
"strings"
)
// Define the regex patterns as constants
@@ -46,3 +47,17 @@ func CheckRecipient(recipient string) (string, error) {
return "", fmt.Errorf("invalid recipient: must be a phone number, address or alias")
}
// FormatPhoneNumber formats a Kenyan phone number to "254xxxxxxxx".
func FormatPhoneNumber(phone string) (string, error) {
// Remove any leading "+" and spaces
phone = strings.TrimPrefix(phone, "+")
phone = strings.ReplaceAll(phone, " ", "")
// Replace leading "0" with "254" if present
if strings.HasPrefix(phone, "0") {
phone = "254" + phone[1:]
}
return phone, nil
}