检查字符是否为标记的c#方法
本文关键字:方法 字符 是否 检查 | 更新日期: 2023-09-27 17:48:56
如果给定字符是XML标记字符,在。net框架中是否有任何方法将返回true ?也就是说,字符'"<>_&
和其他任何可能存在的字符之一。
我知道我也可以去一个简单的字符串搜索,但我想知道是否存在一个内置的方法,不依赖于手动输入字符。
您可以结帐下面的知识库文章。
我不确定术语"XML标记字符"(或者更确切地说,用于检测这些内容的独立于上下文的函数)有多大意义,因为您列出的一些字符仅根据它们出现的上下文具有特殊含义(例如'
和"
,如果它们出现在标记之外,它们就是正常字符)。
除此之外,您还可以自己编写这样的函数:
bool IsMarkupCharacter(char ch)
{
switch (ch)
{
case '''':
case ''"':
case '<':
case '>':
case '&':
return true;
default:
return false;
}
}
当然,您需要根据XML规范检查它是否真正完整。(顺便说一下,我没有把_
包括在你的列表中;在任何方面,它都不是XML所特有的。)
您也可以使用以下代码
const string XMLCHARS = "''"''<>&";
if(XMLCHARS.Contains(c))
{
--
}
可以使用扩展名
public static class CharExtension
{
public static bool IsXmlMarkup(this char charecter)
{
if(charecter == '''' || charecter == ''"' || e.t.c)
return true;
return false;
}
}
然后直接使用
char c = '''';
var res = c.IsXmlMarkup();