溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

格式化電話號碼,C++ format的國際標(biāo)準(zhǔn)支持

發(fā)布時間:2024-10-11 11:42:37 來源:億速云 閱讀:82 作者:小樊 欄目:編程語言

在C++中,你可以使用std::ostringstreamstd::setw來格式化電話號碼。為了支持國際電話號碼,你可以考慮使用第三方庫,如libphonenumber

以下是一個使用std::ostringstream的示例:

#include <iostream>
#include <sstream>
#include <iomanip>

std::string formatPhoneNumber(const std::string& phoneNumber) {
    std::ostringstream oss;
    oss << std::setw(3) << std::setfill('0') << phoneNumber.substr(0, 3)
        << "-" << std::setw(3) << std::setfill('0') << phoneNumber.substr(3, 3)
        << "-" << std::setw(4) << std::setfill('0') << phoneNumber.substr(6);
    return oss.str();
}

int main() {
    std::string phoneNumber = "+1-234-567-8901";
    std::string formattedPhoneNumber = formatPhoneNumber(phoneNumber);
    std::cout << "Formatted phone number: " << formattedPhoneNumber << std::endl;
    return 0;
}

這個示例將電話號碼格式化為+1-234-567-8901的形式。

如果你需要處理更復(fù)雜的國際電話號碼,建議使用libphonenumber庫。這個庫可以幫助你解析、格式化和驗證電話號碼。要使用libphonenumber,你需要先安裝它,然后在你的項目中包含相應(yīng)的頭文件。以下是一個簡單的示例:

#include <iostream>
#include <string>
#include <phonenumbers/phonenumberutil.h>
#include <phonenumbers/phonenumber.h>

std::string formatPhoneNumber(const std::string& phoneNumber) {
    phonenumbers::PhoneNumberUtil* util = phonenumbers::PhoneNumberUtil::GetInstance();
    phonenumbers::PhoneNumberFormat format = phonenumbers::PhoneNumberFormat::INTERNATIONAL;
    phonenumbers::PhoneNumber phoneNumberObj = util->Parse(phoneNumber, "US");
    return util->Format(phoneNumberObj, format);
}

int main() {
    std::string phoneNumber = "+1-234-567-8901";
    std::string formattedPhoneNumber = formatPhoneNumber(phoneNumber);
    std::cout << "Formatted phone number: " << formattedPhoneNumber << std::endl;
    return 0;
}

這個示例同樣將電話號碼格式化為+1-234-567-8901的形式。注意,你需要在你的項目中安裝libphonenumber庫并鏈接相應(yīng)的庫文件。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

c++
AI