DotNet的字符转义操作是怎样的
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇文章给大家分享的是有关DotNet的字符转义操作是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在项目中使用到字符的转义,现在
千家信息网最后更新 2025年02月01日DotNet的字符转义操作是怎样的
本篇文章给大家分享的是有关DotNet的字符转义操作是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
在项目中使用到字符的转义,现在提供一种字符转义和反转义的操作方法:
1.转义符操作:
////// 转义符操作 /// /// /// ///public static string EscapeChar(string s, char charToEliminate) { char escapeChar; char substituteChar; GetEscapeAndEncodingChars(charToEliminate, out escapeChar, out substituteChar); int i; for (i = 0; i < s.Length; i++) { if (s[i] == charToEliminate || s[i] == escapeChar) { break; } } if (i == s.Length) { return s; } var sb = new StringBuilder(s.Substring(0, i), s.Length + 16); for (; i < s.Length; i++) { var c = s[i]; if (c == charToEliminate) { sb.Append(escapeChar); sb.Append(substituteChar); } else if (c == escapeChar) { sb.Append(escapeChar, 2); } else { sb.Append(c); } } return sb.ToString(); }
2.反转义符操作:
////// 反转义符操作 /// /// /// ///public static string UnescapeChar(string s, char eliminatedChar) { ArgumentValidator.ThrowIfNull(s, "s"); char escapeChar; char substituteChar; GetEscapeAndEncodingChars(eliminatedChar, out escapeChar, out substituteChar); if (-1 == s.IndexOf(escapeChar)) { return s; } var sb = new StringBuilder(s.Length); for (var i = 0; i < s.Length; i++) { var c = s[i]; var next = i + 1; if (c != escapeChar || next == s.Length) { sb.Append(c); continue; } if (s[next] == escapeChar) { sb.Append(escapeChar); i++; } else if (s[next] == substituteChar) { sb.Append(eliminatedChar); i++; } else { var msg = ("Invalid escaped string '{0}'. Position {1} has escape character, but it is not followed by " + "another escape character or by the substitute character").Fi(s, i); throw new AssertionViolationException(msg); } } return sb.ToString(); }
3.获取转义符和编码字符:
////// 获取转义符和编码字符 /// /// /// /// private static void GetEscapeAndEncodingChars(char charToEliminate, out char escapeChar, out char encodingChar) { var i = MEscapeChars[0] == charToEliminate ? 1 : 0; escapeChar = MEscapeChars[i]; i++; if (MEscapeChars[i] == charToEliminate) { i++; } encodingChar = MEscapeChars[i]; }
以上就是DotNet的字符转义操作是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
转义
字符
义符
更多
知识
篇文章
编码
实用
就是
工作会
文章
方法
看吧
知识点
行业
详情
资讯
资讯频道
跟着
部分
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全的重要性 举事例
神女控数据库
实体类连接数据库
映射服务器磁盘
网络安全培训学校名称
网络安全主题宣传板报
承德软件开发优缺点
联想电脑的代理服务器在哪里
服务器安全事件id说
北京融宝网络技术有限公司
深信服网络安全
手机虚拟服务器搭建
网络安全和隐私工程师薪资
商务视频软件开发
关于网络技术实训的课题
数据库流行度
腾讯网络安全问题
什么是软件开发语言
蝴蝶视频软件开发
移动it网络技术岗位职责
联想本地服务器如何重装系统
科技互联网龙头股有哪些
我的世界服务器炸服赔多少
数据库瓶颈方面什么技术提供了
广联达数据库损坏无法保存
数据库分组怎么写
安全可靠的游戏代理服务器
深圳市嗨噢网络技术
网络安全与等级保护技术研究
服务器检测维修需要多长时间