-5

識別子があります。例:'basicHtmlConverter。'
私はいくつかの言葉で彼を分割する必要があります:「基本的なHTMLコンバーター」。なんらかの柄で
使ってみようと思います。Regex.Split

4

2 に答える 2

0

これを試してくださいRegex

([a-z]+)([A-Z]?[a-z]*)+

コードは次のようになります。

var nameList = new List<string>();
var inputString = "canClearScene";
foreach (Capture capture in Regex.Matches(inputString, "(?<name>[a-z]+)(?<name>[A-Z]?[a-z]*)+")[0].Groups["name"].Captures)
{
    nameList.Add(capture.Value);
}

またはLINQ途中で:

var nameList = (from Capture capture in Regex.Matches(inputString, "(?<name>[a-z]+)(?<name>[A-Z]?[a-z]*)+")[0].Groups["name"].Captures
                select capture.Value).ToList();
于 2012-07-31T06:52:27.483 に答える
0

正規表現は必要ありません。文字列を1回スキャンして、タスクをLINQするだけです。

yourString.Select(c => string.Format(Char.IsUpper(c) ? " {0}" : "{0}", c));

これによりIEnumerable<string>、必要なすべてのデータを含むオブジェクトが渡され、次のように必要なものになる可能性があります。

string[] output = string.Split(" ", string.Join("", yourString.Select(c => string.Format(Char.IsUpper(c) ? " {0}" : "{0}", c)));

基本的に、フローは次のようになります。

  • 必要なスペースを挿入します
  • データをまとめる
  • トークンを分割する
于 2012-07-31T07:09:44.483 に答える