Find and replace number with string using C#
Find and replace number with string using C#
Input: "1 2 are working in the 3 company"
Output :"one two are working in the three company"
using System;
using System.Text;
using System.Collections.Generic;
namespace Coding.Exercise
{
public class Exercise
{
// TODO: fix this method - fix bugs, make more efficient, and return correct result
public static string ReplaceDigits(string sentence)
{
// int length =sentence.Length;
StringBuilder sb = new StringBuilder ();
//string result =sentence;
char[] characters = sentence.ToCharArray();
for(int i =0; i<characters.Length;i++ )
{
char a =characters[i];
Console.WriteLine(characters[i]);
if(char.IsDigit(a))
{
// Console.WriteLine(characters[i+1]);
if(i+1<characters.Length && ! char.IsWhiteSpace(characters[i+1]))
{
sb.Append(ReturnNumberString(a)+" ");
}
else
{
sb.Append(ReturnNumberString(a));
}
//result=result.Replace(Convert.ToString(a),ReturnNumberString(a));
// Console.WriteLine(result);
}
else{
sb.Append(characters[i]);
}
}
return sb.ToString();
}
public static string ReturnNumberString(char number)
{
switch(number)
{
case '1': return "one" ;break;
case '2': return "two"; break;
case '3': return "three"; break;
case '4': return "four"; break;
case '5': return "five"; break;
case '6': return "six"; break;
case '7': return "seven"; break;
case '8':return "eight"; break;
case '9':return "nine"; break;
case '0':return "zero "; break;
default: return"";break;
}
}
}
}
Comments
Post a Comment