Код: Выделить всё
public static string Clean(string identifier)
{
StringBuilder builder = new StringBuilder(identifier);
for(int i = 0; i < builder.Length; i++) {
if(Char.IsWhiteSpace(identifier, i)) {
builder[i] = '_';
}
if(Char.IsSurrogate(identifier, i)) {
builder.Remove(i, 1);
}
if(builder[i] == '-') {
builder.Remove(i, 1);
char toUpper = Char.ToUpper(builder[i]); // i since we've removed the char before
builder[i] = toUpper;
}
if(Char.GetUnicodeCategory(identifier, i) == UnicodeCategory.OtherLetter) {
builder.Remove(i, 1);
}
}
builder.Replace("\0", "CTRL");
return builder.ToString();
}
Кто -нибудь знает решение?
Подробнее здесь: https://stackoverflow.com/questions/708 ... rom-string