文字列をどのように分割しますか?
「犬、猫、ネズミ、鳥」という文字列があるとしましょう
私の実際の目標は、それらの動物をそれぞれ listBox に挿入して、リスト ボックスの項目にすることです。
しかし、文字列を分割する方法を知っていれば、それらのアイテムを挿入する方法についてのアイデアが得られると思います。または、これを行うためのより良い方法を知っている人はいますか?
私はasp c#を使用しています
文字列をどのように分割しますか?
「犬、猫、ネズミ、鳥」という文字列があるとしましょう
私の実際の目標は、それらの動物をそれぞれ listBox に挿入して、リスト ボックスの項目にすることです。
しかし、文字列を分割する方法を知っていれば、それらのアイテムを挿入する方法についてのアイデアが得られると思います。または、これを行うためのより良い方法を知っている人はいますか?
私はasp c#を使用しています
string[] tokens = text.Split(',');
for (int i = 0; i < tokens.Length; i++)
{
yourListBox.Add(new ListItem(token[i], token[i]));
}
String.Splitを試しましたか? "a, b, c" を {"a", "b", "c"} にしたいが、"ab, c" を {"a b にしたい場合は、空白を削除するために後処理が必要になることがあります"、"c"}.
例えば:
private readonly char[] Delimiters = new char[]{','};
private static string[] SplitAndTrim(string input)
{
string[] tokens = input.Split(Delimiters,
StringSplitOptions.RemoveEmptyEntries);
// Remove leading and trailing whitespace
for (int i=0; i < tokens.Length; i++)
{
tokens[i] = tokens[i].Trim();
}
return tokens;
}
不必要な Linq バージョン。
from s in str.Split(',')
where !String.IsNullOrEmpty(s.Trim())
select s.Trim();
または単に:
targetListBox.Items.AddRange(inputString.Split(','));
または、文字列が確実にトリミングされるようにするには、次のようにします。
targetListBox.Items.AddRange((from each in inputString.Split(',')
select each.Trim()).ToArray<string>());
おっとっと!コメントが指摘しているように、それが ASP.NET であることを見逃したため、文字列配列から初期化できません。次のようにする必要があります。
var items = (from each in inputString.Split(',')
select each.Trim()).ToArray<string>();
foreach (var currentItem in items)
{
targetListBox.Items.Add(new ListItem(currentItem));
}
strVar.Split によって文字列配列を提供します
"dog, cat, mouse,bird".Split(new[] { ',' });