How to mask string?

mko picture mko · Mar 14, 2012 · Viewed 48.8k times · Source

I have a string with value "1131200001103".

How can I display it as a string in this format "11-312-001103" using Response.Write(value)?

Thanks

Answer

Jon Skeet picture Jon Skeet · Mar 14, 2012

Any reason you don't want to just use Substring?

string dashed = text.Substring(0, 2) + "-" +
                text.Substring(2, 3) + "-" +
                text.Substring(7);

Or:

string dashed = string.Format("{0}-{1}-{2}", text.Substring(0, 2),
                              text.Substring(2, 3), text.Substring(7));

(I'm assuming it's deliberate that you've missed out two of the 0s? It's not clear which 0s, admittedly...)

Obviously you should validate that the string is the right length first...