kxing 发表于 2010-7-1 23:49:53

[已解决]正则不匹配的问题

本帖最后由 kxing 于 2010-9-2 02:54 编辑

请问不匹配是否用 [?不匹配字符] 这种方式呢.
尝试过似乎方法错误,特意来求助高手!

如:"aaa>bbb>ccc>ddd<>ee>ee<"
我只要提取ddd,不希望 > 和 <之间出现第二个 >,也就是最后的ee>ee不匹配。
我尝试过这样写:"\>[?>]+?\<",徒劳无功!

afan 发表于 2010-7-1 23:55:32

.+?>([^\>\<]+)<.+

kxing 发表于 2010-7-1 23:57:44

感谢啊,这个 [^],是否不匹配呢

afan 发表于 2010-7-1 23:59:28

是的,也就是除[^后面的]都匹配

kxing 发表于 2010-7-2 00:29:31

趁机会问下,这个 .* .+ .+? 分别都是什么意思呢
我怎么感觉都差不多,但是有时候这个.+?用处比较大。。。
麻烦afan大姐是下,多谢!

afan 发表于 2010-7-2 00:33:07

.*匹配前面的表达式0个到最多个,尽可能的多匹配
.+ 匹配前面的表达式1个到最多个,尽可能的多匹配
.+? 匹配前面的表达式1个到多个,尽可能的少匹配

kxing 发表于 2010-7-2 01:49:28

嗯,感谢!!!

风行者 发表于 2010-7-3 15:28:16

$str = "aaa>bbb>ccc>ddd<>ee>ee<"
$sr = StringRegExp($str,">(\w{3})<",3)
For $s In $sr
        MsgBox(0,"",$s)
Next

fpquenya 发表于 2012-6-15 15:51:56

>([^<>]+)<>
页: [1]
查看完整版本: [已解决]正则不匹配的问题