4

我有一个来自数据库的任意字符串。我想将此字符串作为 HTML 类名放在网页上。我不确定会期待什么角色。如何删除空格和特殊字符以使其成为 CSS 类名“安全”?

经过一番研究,似乎空间和这些字符需要删除:

!"#$%&'()*+,./:;<=>?@[\]^`{|}~

删除它们的最佳方法是什么?

4

2 回答 2

5

您可能希望查看线程以更好地理解有效的 CSS 名称。

我推荐了一个如下的实用函数,您应该根据需要测试/更改正则表达式。

Regex re = new Regex(@"[!""#$%&'()\*\+,\./:;<=>\?@\[\\\]^`{\|}~ ]");
string outputString = re.Replace(inputString, string.Empty); 
于 2012-06-07T19:28:37.713 回答
0

您正在尝试 System.IO.Path.GetInvalidFileNameChars 过滤掉特殊字符:

var tagName = "fo@3do@11~1298#bar";
    var invalidChars = System.IO.Path.GetInvalidFileNameChars();
    var cleanTagName = new string(tagName.Where(m => !invalidChars.Contains(m)).ToArray<char>());
于 2012-06-07T19:27:28.550 回答