Как сказанный Ed, CompareTo используется для сортировки.
существует различие, однако, между.Equals и ==.
== решает к по существу следующий код:
if(object.ReferenceEquals(left, null) &&
object.ReferenceEquals(right, null))
return true;
if(object.ReferenceEquals(left, null))
return right.Equals(left);
return left.Equals(right);
простая причина следующая, выдаст исключение:
string a = null;
string b = "foo";
bool equal = a.Equals(b);
И следующее не будет:
string a = null;
string b = "foo";
bool equal = a == b;
Вот то, что я закончил тем, что использовал для преобразования строки в случай заголовка, на основе нескольких ответов здесь:
str = str
.replace(/(_|-)/g, ' ')
.trim()
.replace(/\w\S*/g, function(str) {
return str.charAt(0).toUpperCase() + str.substr(1)
})
.replace(/([a-z])([A-Z])/g, '$1 $2')
.replace(/([A-Z])([A-Z][a-z])/g, '$1 $2')
Вот JSFiddle, где можно протестировать строку, чтобы видеть, удовлетворяет ли это потребности: https://jsfiddle.net/thomastasa/5236dv8t/85 /
<час>Примеры: