我在我的页面上写了一个如下所示的脚本:
<script type="text/javascript">
var test = 'Some user input';
</script>
某些用户输入来自我的C#代码,之前已由用户保存。现在,问题是,从那时起我将在浏览器中收到以下错误:
未捕获的SyntaxError:意外的标记ILLEGAL
我需要一些通用的方法来捕获这些非法字符并删除它们。例如,以下用户输入实际上包含非法字符:
<p><span>.</span></p>
我实际上必须删除Stackoverflow问题中的非法字符,因为它还会破坏编辑器 - 而是我在jsfiddle中添加了未受污染的示例: https://jsfiddle.net/p8suow9m/
很难看到,但它就在那里。在谷歌浏览器中查看它会让它更容易看到:
有人可以用C#中的正确方法来帮助我过滤掉这些非法字符吗?
请注意,我不能使用使用有效字符列表的方法并删除其他所有内容,因为我需要支持许多
答案 0 :(得分:1)
尝试以下c#代码,它对我有用: P.S。:无法将其作为代码发布,编辑器错误,所以我错过了代码片段的事情。
Regex.Replace(@"<p><span>test.
> </span></p>", @"[^\u0000-\u007F]", string.Empty);