Csharp/CSharp Tutorial/Regular Expression/Regex Phone number — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Версия 15:31, 26 мая 2010
Match a phone number
using System;
using System.Text.RegularExpressions;
class Class1
{
[STAThread]
static void Main(string[] args)
{
Regex phoneExp = new Regex( @"^\(\d{3}\)\s\d{3}-\d{4}$" );
string input;
Console.Write( "Enter a phone number: " );
input = Console.ReadLine();
while( phoneExp.Match( input ).Success == false )
{
Console.WriteLine( "Invalid input. Try again." );
Console.Write( "Enter a phone number: " );
input = Console.ReadLine();
}
Console.WriteLine( "Validated!" );
}
}
Regular Expression: phone number
using System;
using System.Text.RegularExpressions;
class MainClass
{
public static void Main()
{
string text = "(800) 888-1211\n" +
"(212) 555-1212\n" +
"(506) 777-1213\n" +
"(650) 222-1214\n" +
"(888) 111-1215\n";
string areaCodeRegExp = @"(?<areaCodeGroup>\(\d\d\d\))";
string phoneRegExp = @"(?<phoneGroup>\d\d\d\-\d\d\d\d)";
MatchCollection myMatchCollection = Regex.Matches(text, areaCodeRegExp + " " + phoneRegExp);
foreach (Match myMatch in myMatchCollection)
{
Console.WriteLine("Area code = " + myMatch.Groups["areaCodeGroup"]);
Console.WriteLine("Phone = " + myMatch.Groups["phoneGroup"]);
foreach (Group myGroup in myMatch.Groups)
foreach (Capture myCapture in myGroup.Captures)
Console.WriteLine("myCapture.Value = " + myCapture.Value);
}
}
}
Area code = (800) Phone = 888-1211 myCapture.Value = (800) 888-1211 myCapture.Value = (800) myCapture.Value = 888-1211 Area code = (212) Phone = 555-1212 myCapture.Value = (212) 555-1212 myCapture.Value = (212) myCapture.Value = 555-1212 Area code = (506) Phone = 777-1213 myCapture.Value = (506) 777-1213 myCapture.Value = (506) myCapture.Value = 777-1213 Area code = (650) Phone = 222-1214 myCapture.Value = (650) 222-1214 myCapture.Value = (650) myCapture.Value = 222-1214 Area code = (888) Phone = 111-1215 myCapture.Value = (888) 111-1215 myCapture.Value = (888) myCapture.Value = 111-1215