我有一个 Sharepoint 项目列表:每个项目都有一个标题、一个描述和一个类型。
我成功检索了它,我将其命名为result
。我想首先检查 result
中是否有任何项目以 A、B、C 等开头。我必须对每个字母字符做同样的事情,然后如果我找到一个以这个字符我将不得不以粗体显示该字符。
我最初使用这个函数显示字符:
private string generateHeaderScripts(char currentChar)
{
string headerScriptHtml = "$(document).ready(function() {" +
"$(\"#myTable" + currentChar.ToString() + "\") " +
".tablesorter({widthFixed: true, widgets: ['zebra']})" +
".tablesorterPager({container: $(\"#pager" + currentChar.ToString() +"\")}); " +
"});";
return headerScriptHtml;
}
如何检查单词是否以给定字符开头?
最佳答案
要检查一个值,使用:
string word = "Aword";
if (word.StartsWith("A"))
{
// do something
}
你可以做一个小的扩展方法来传递一个包含 A、B 和 C 的列表
public static bool StartsWithAny(this string source, IEnumerable<string> strings)
{
foreach (var valueToCheck in strings)
{
if (source.StartsWith(valueToCheck))
{
return true;
}
}
return false;
}
if (word.StartsWithAny(new List<string>() { "A", "B", "C" }))
{
// do something
}
作为奖励,如果你想知道你的字符串以什么开头,从一个列表中,并根据该值做一些事情:
public static bool StartsWithAny(this string source, IEnumerable<string> strings, out string startsWithValue)
{
startsWithValue = null;
foreach (var valueToCheck in strings)
{
if (source.StartsWith(valueToCheck))
{
startsWithValue = valueToCheck;
return true;
}
}
return false;
}
用法:
string word = "AWord";
string startsWithValue;
if (word.StartsWithAny(new List<string>() { "a", "b", "c" }, out startsWithValue))
{
switch (startsWithValue)
{
case "A":
// Do Something
break;
// etc.
}
}
关于c# - 如何检查一个单词是否以给定字符开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15527051/