Skip to main content

Regex Numeric Pattern and Exclude Pattern

To remove non numeric characters from alpha numeric string by using Regex, to do this we can use regular expressions, have a look at below code snippet.
Regex exculdePattern = new Regex(@"[^.0-9]"RegexOptions.Compiled);
if (exculdePattern.IsMatch(phoneNumber))
{
    phoneNumber = exculdePattern.Replace(phoneNumber, string.Empty);
}
If the phone number is alpha numeric, the above code snippet replaces all non numeric characters with empty. 
The below pattern removes a specific character i.e. hyphen(-).
Regex exculdePattern = new Regex(@"[-]+"RegexOptions.Compiled);
To verify the phone number is a numeric and minumum length, the below numeric pattern helps.
Regex numericPattern = new Regex(@"\d{10}$"RegexOptions.Compiled);
if (numericPattern.IsMatch(phoneNumber))
{
    double phoneNum = Convert.ToDouble(phoneNumber);
    Console.Write("\n"+phoneNum.ToString("(###) ###-####"));
    phoneNumber = string.Concat(phoneNumber.Substring(0, 3), "-"
phoneNumber.Substring(3, 3), "-", phoneNumber.Substring(6, 4));
    Console.Write("\n" + phoneNumber);
}


Popular posts from this blog

WCF Service Exception PlainXmlWriter+MaxSizeExceededException

For a WCF service the exception 'System.ServiceModel.Diagnostics.PlainXmlWriter+MaxSizeExceededException' generally occurs when we switched on logging and tracing.   A message was not logged. Exception: System.InvalidOperationException: There was an error generating the XML document. ---> System.ServiceModel.Diagnostics.PlainXmlWriter+MaxSizeExceededException: Exception of type 'System.ServiceModel.Diagnostics.PlainXmlWriter+MaxSizeExceededException' was thrown.   The reason is that "maxSizeOfMessageToLog" configuration parameter value is set to a value lower than the size of the message to log. < system.serviceModel>   < diagnostics > <!-- log all messages received or sent at the transport or service model levels --> < messageLogging logEntireMessage = " true " logMessagesAtServiceLevel = " true " logMalformedMessages = " true " logMessagesAtTransportLevel = " true "    maxMessa...

ISAPI & CGI Restriction configuration missing in IIS

In windows 7 by default ISAPI & CGI Restrictions are not configured. To enable ISAPI & CGI restrictions, GoTo -> Control Panel -> Programs -> Click on "Windows features on or off -> Expand Internet Information Services - >Expand World Wide Web Services ->Select CGI and ISAPI extensions and Click OK. After enabling, Check in IIS, Open your IIS and the feature will be available. What is ISAPI and CGI restrictions : ISAPI and CGI restrictions are request handlers that allow dynamic content to execute on a server. These restrictions are either CGI files (.exe) or ISAPI extensions (.dll). You can add custom ISAPI or CGI restrictions if the IIS configuration system allows this.

Implementing Parallelism With A SearchResultCollection

Implementing Parallel.ForEach with a SearchResultCollection: The below piece of code helps to check the given user is a part of the given active directory group. To implement Parallel.ForEach with a SearchResultCollection, do the casting with the SearchResult object and covert it into a list. //// Directory Searcher var directorySearcher = new DirectorySearcher(string.Format("(CN={0})", groupName)); //// Find group var searchResultCollection = directorySearcher.FindAll().Cast ().ToList(); Parallel.ForEach(searchResultCollection, searchResult => {  // enumerate members  var resultPropColl = searchResult.Properties;  Parallel.ForEach(resultPropColl["member"].Cast ().ToList(), member =>  {    var memberEntry = new DirectoryEntry("LDAP://" + member);    var userProperties = memberEntry.Properties;    if (GetUserNameFromProperties(userProperties, "sAMAccountName") == userName)    {      return true; ...