如何检查单词是否以给定字符开头?
问题描述:
我有一个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.
}
}
答
要在返回字符串的第一个字符,使用方法:
Word.Substring(0,1) //where word is a string
答
假设你正在检查的属性是字符串类型,你可以使用String.StartsWith()方法。例如: -
if(item.Title.StartsWith("A"))
{
//do whatever
}
冲洗和重复
答
您可以实现定期Expr的essions。它们非常强大,但是当你设计你的表情时,它实际上会为你完成一项任务。
例如找到一个数字,字母,单词等,这是非常有表现力和灵活性。
他们对这些here一个真正伟大的教程:
这样的表达的一个例子是:
string input = "Some additional string to compare against.";
Match match = Regex.Match(input, @"\ba\w*\b", RegexOptions.IgnoreCase);
这将找到所有以“一”不管启动项案件。你甚至可以使用Lambda和Linq来使它们更加流畅。
希望有帮助。
答
请尝试以下操作。您可以执行StartsWith或子0,1(第一个字母)
if (Word.Substring(0,1) == "A") {
}
答
你可以做这样的事情,检查是否有特定的字符。
public bool StartsWith(string value, string currentChar) {
return value.StartsWith(currentChar, true, null);
}
StartsWith方法有一个选项可以忽略大小写。第三个参数是设置文化。如果为空,它只是使用当前的文化。使用这种方法,您可以循环查看单词,运行检查并处理单词以根据需要突出显示第一个字符。
我可能不明白你的问题,但如果你可以解析它为一个字符串,你可以使用'.StartsWith' – 2013-03-20 15:02:49