过滤javascript中警告信息的特殊字符(C#)

本文介绍了一种使用C#中的正则表达式进行文本替换的方法,包括处理回车换行、单引号及不同进制转义序列等常见需求。这些方法能够帮助开发者快速实现对特定字符串模式的替换。
ContractedBlock.gifExpandedBlockStart.gifCode
public class RegexReplace
    {
        
/// <summary>
        
/// 回车 换行
        
/// </summary>
        
/// <param name="input"></param>
        
/// <returns></returns>
        public static string ReplaceText(string input)
        {
            
string pattern = @"(?:\\)+(?=[rn])";
            
return Regex.Replace(input, pattern, @"\");
        }

        
/// <summary>
        
/// 单引号
        
/// </summary>
        
/// <param name="input"></param>
        
/// <returns></returns>
        public static string ReplaceSingleQuote(string input)
        {
            
string pattern = @"\\*'";
            
return Regex.Replace(input, pattern, @"\'");
        }

        
/// <summary>
        
/// \xnn 16进制
        
/// </summary>
        
/// <param name="input"></param>
        
/// <returns></returns>
        public static string ReplaceHexXCode(string input)
        {
            
string pattern = @"(\\)+x(?=$|[0-9a-fA-F]{0,1}[^0-9a-fA-F])";
            
return Regex.Replace(input, pattern, @"\\x");
        }

        
/// <summary>
        
/// \unnnn 16进制
        
/// </summary>
        
/// <param name="input"></param>
        
/// <returns></returns>
        public static string ReplaceHexUCode(string input)
        {
            
string pattern = @"(\\)+u(?=$|[0-9a-fA-F]{0,3}[^0-9a-fA-F])";
            
return Regex.Replace(input, pattern, @"\\u");
        }

        
/// <summary>
        
/// 8进制 \0nnn
        
/// </summary>
        
/// <param name="input"></param>
        
/// <returns></returns>
        public static string ReplaceOctalCode(string input)
        {
            
string pattern = @"(\\)+0(?=$|[0-7]{0,2}[^0-7])";
            
return Regex.Replace(input, pattern, @"\\0");
        }
    }

转载于:https://www.cnblogs.com/joe-yang/archive/2008/12/01/1345232.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值