ただ、最後にこれを追加し、それはあなたの11グループになります(それは実際に2桁以上
(\d{2,})
を持っていない限り、それはコードがされる拡張子をピックアップしません。
Regex.Replace(phone,
@"^\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d{2,})$",
"+1 $1$2$3-$4$5$6-$7$8$9$10 Ext $11");
(\d{2,})?
それはまだあなたの電話番号と一致しますが、WIL:これはオプションにする場合
、その後、これを行いますそう、lは、その後、あなたがこのようなMatchEvaluator
何かを使用する必要があり、これはオプションでも内線を使用しないようにするには上記の意志
などの拡張子を強制しない(しかし、私は私の目の前でコンパイラを持っていけません少し離れている可能性があり、テストする必要があります)
Regex.Replace(phone,
@"^\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d)\D*(\d{2,})$",
"+1 $1$2$3-$4$5$6-$7$8$9$10 Ext $11");
match =>
{
var returnVal = "+1 ";
for(int i = 1; i <= 3; i++)
{
returnVal += match.Groups[i].Value;
if(i == 3 || i == 6)
returnVal += "-";
}
returnVal += match.Groups[11].Success ? " Ext " + match.Groups[11] : "")
return returnVal;
}
)
甘い!ありがとう!! –
@Justin拡張子がオプションの場合に追加しました。ちょうどそれが有用かもしれないと思った:) –
恐ろしいおかげで!それは非常にいいです。オプションでExtを非表示にすることは可能ですか?Ext(この場合は空白)のようには見えませんか? –