私はEditor
コントロールを持っているUWP
文字列に文法的なケーシングを適用する簡単な方法はありますか?
にXamarin.Forms
アプリケーションを開発しています - 基本的には、マルチラインTextBox
私は基本的には次の文字列にいくつかの簡単な文法的ケーシングを適用しようとしています:
- "I"という単語を大文字にする
- 最初の単語を大文字にする
- 大文字最初の言葉が完全に止まった後。
私は最初の2つをやっていましたが、3番目につまっていて、簡単な方法があるかどうか、またはアルゴリズムを適用できるかどうか疑問に思っていました。
私がこれまで持っていることは次のとおりです。
public static string ToGramaticalCase(this string s)
{
var thingsToCapitalise = new String[] {"i"};
string newString = string.Empty;
if (!string.IsNullOrEmpty(s))
{
var wordSplit = s.Split(' ');
if (wordSplit.Count() > 1)
{
var wordToCapitalise = wordSplit.First();
wordToCapitalise = wordToCapitalise.Substring(0, 1).ToUpper() + wordToCapitalise.Substring(1);
var value = wordToCapitalise + s.Substring(wordToCapitalise.Length);
foreach (var item in thingsToCapitalise)
{
value = value.Replace(string.Format(" {0} ", item), string.Format(" {0} ", item.ToUpper()));
}
newString = value;
}
}
return newString;
}
ない、それはあなたが望むすべてを行う場合には必ず、しかし、あなたは[HUMANIZER](https://github.com/Humanizr/Humanizer)を見た –