正则表达提取字符数据及无法识别转义解法

1、asp.net 常量有字符无法识别的转义可以试着在前面加个@

2、利用正则表达式中分组操作字符数据。

如实现电话1354635****效果

 
  
string str = " 13532536463 " ;
string temp = Regex.Replace(str, @" [\d]{4}$ " , " **** " , RegexOptions.RightToLeft);
Console.Write(temp);

分组提取字符数据

ContractedBlock.gif ExpandedBlockStart.gif 代码
 
   
string str = " a=2&b=2&3 " ;
MatchCollection matchs
= Regex.Matches(str, @" \w=\d " );
for ( int i = 0 ; i < matchs.Count; i ++ )
{
Console.WriteLine(matchs[i].Value);
}

结果:a=2 b=2

如果还想得到a=2中的a和2可以这样写

ContractedBlock.gif ExpandedBlockStart.gif 代码
 
   
string str = " a=2&b=2&3 " ;
MatchCollection matchs
= Regex.Matches(str, @" \w=\d " );
for ( int i = 0 ; i < matchs.Count; i ++ )
{
Match match
= Regex.Match(matchs[i].Value, @" (\w)=(\d) " );
if (match.Success)
{
string value = match.Groups[ 1 ].Value; // 这里注意这个分组的起始下标是1
string num = match.Groups[ 2 ].Value;
Console.WriteLine(
" 字母是: " + value + " 数字是: " + num);
}
}

转载于:https://www.cnblogs.com/solomon_Blog/archive/2011/01/10/1932425.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值