Asdiscussedbylotsandlotsofpeople, the “I” in Turkish behaves differently than in most languages. Per the Unicode standard, our lowercase “i” becomes “İ” (U+0130 “Latin Capital Letter I With Dot Above”) when it moves to uppercase. Similarly, our uppercase “I” becomes “ı” (U+0131 “Latin Small Letter Dotless I”) when it moves to lowercase.

Fix: A CultureInvariant won’t help you here. The only option is to explicitly specify the character range you mean:

Or use the RegexOptions.ECMAScript option. In JavaECMAScript, “\d” means [0-9] which gives us:

“The Turkey Test” poses a very simple question, but yet is full of surprises for guys like me who didn’t realize all the little details. Turkey, as we saw above, is sort of like “New York, New York” in the classic Frank Sinatra song:

“These little town blues, are melting away
I’ll make a brand new start of it - in old New York If I can make it there, I’ll make it anywhere
Its up to you - New York, New York”