簡體   English   中英

如何使用正則表達式檢查電話號碼

[英]How to check the phone number using Regex

我正在嘗試檢查用戶輸入,我希望電話號碼類似於000-0000

但是我在這里的代碼不能按我的意願工作。 我輸入

"123-4444444"

它也匹配。

我不熟悉Regex,但我需要使用它,你能告訴我如何改變模式嗎?

Regex regex = new Regex(@"\d{3}-\d{4}");
if (!(regex.IsMatch(txtUpdatePhoneNumber.Text)))
{
   MessageBox.Show("Phone number format should be 000-0000", "Error");
}

您必須指定開始和開始

請在此處檢查正則表達式: https://regex101.com/r/MZ4YPo/1

^ : 字符串的開頭
$ : 字符串結尾

^\d{3}-\d{4}$

Regex regex = new Regex(@"^\d{3}-\d{4}$");
if (!(regex.IsMatch(txtUpdatePhoneNumber.Text)))
{
    MessageBox.Show("Phone number format should be 000-0000", "Error");
}

當您為用戶輸入編寫驗證器時,它會尋找我。 所以(不幸的是我不得不猜測)在這方面你只需要這個數字,之前或之后什么都不需要。

Regex regex = new Regex(@"^\d{3}-\d{4}$");

這意味着您需要使用^確保前 3 位數字確實位於字符串的開頭,否則IsMatch將返回true ,因為它在"something000-0000"中找到了模式

並且在最后 4 位數字之后,字符串使用$結束,否則IsMatch將返回true ,因為它在"000-0000something"中找到模式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM