正则表达式三

前后查找

(?=) 正向前查找
(?<=) 正向后查找

(?!) 负向前查找 取非
(?< !) 负向后查找 取非

  1. 正向前查找
str = @"http://www.forta.com/                    https://www.sdfol.com/                   ftp://ftp.forta.com";
/* 
字表达式(?=:)匹配:
匹配到的:并没有出现在最终的匹配的结果里,只要找到:就行了
*/
pattern = @".+(?=:)";
结果:
http
https
ftp

2.正向后查找

str = @"1:$123.34
        2:$3.1
        3:$3999.0
        4:$.
        5:$32.";
pattern = @"(?<=\$)\d+\.{1}[0-9]{1,2}";
结果:
$123.34
$3.1
$3999.0

3.负向后查找

str = @"I paid $30 for 100 apples,
        50 oranges,and 60 pears,
        I saved $5 on this order.";

pattern = @"\b(?<!\$)\d+\b";
结果:
100
50
60

/*
如果不加\b,\b是单词分隔符,$30后面的  0也会匹配出来,
应为这个0完全符合"(?<!\$)\d+"这个匹配
*/
pattern = @"(?<!\$)\d+";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值