如何检查一个单词是否以给定字符开头
本文关键字:是否 开头 字符 单词 何检查 检查 一个 | 更新日期: 2023-09-27 18:05:09
我有一个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
}
AND作为奖励,如果你想知道你的字符串从列表开始,并基于该值做一些事情:
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.
}
}
您可以这样做来检查一个特定的字符。
public bool StartsWith(string value, string currentChar) {
return value.StartsWith(currentChar, true, null);
}
StartsWith方法有一个忽略大小写的选项。第三个参数用于设置区域性。如果为空,则只使用当前区域性。使用此方法,您可以遍历单词,运行检查并处理单词,以根据需要突出显示第一个字符。
假设您要检查的属性是字符串类型,您可以使用string . startswith()方法。例如:-
if(item.Title.StartsWith("A"))
{
//do whatever
}
冲洗并重复
尝试下面的操作。你可以使用StartsWith或Substring 0,1(首字母)
if (Word.Substring(0,1) == "A") {
}
您可以简单地检查第一个字符:
string word = "AWord"
if (word[0] == 'A')
{
// do something
}
请记住字符比较比字符串比较更有效。
返回字符串中的第一个字符,使用:
Word.Substring(0,1) //where word is a string
你可以实现正则表达式。它们非常强大,但是当你设计你的表达式时,它实际上会为你完成一个任务。
例如查找数字、字母、单词等,它非常富有表现力和灵活性。
他们在这里有一个非常好的教程:
这样的表达式的一个例子是:
string input = "Some additional string to compare against.";
Match match = Regex.Match(input, @"'ba'w*'b", RegexOptions.IgnoreCase);
无论如何都能找到所有以"a"开头的项。你甚至会发现使用Lambda和Linq可以使它们更好地流动。