正则表达式问题

<a(^>)+>请问这个为什么不能匹配<ad>而把括号改成[]就可以了... <a(^>)+>

请问这个为什么不能匹配<ad> 而把括号改成[]就可以了
展开
 我来答
wanggangzero
2011-12-19 · TA获得超过240个赞
知道小有建树答主
回答量:135
采纳率:0%
帮助的人:63.2万
展开全部
小括号是分组的意思,
中括号具有自定义字符集合的功能。即匹配集合中的一个字符

小括号写法<a(^>)>匹配<a^>或者<a^>^>^>^>
中括号匹配<abcd>或者<ab>、<ac>、<abc\>等等。
= = = = = = = = = = = = = = = = = = = = = = = =

用中括号 [ ] 包含多个字符,可以匹配所包含的字符中的任意一个。同样,每次只能匹配其中一个。

用中括号 [^ ] 包含多个字符,构成否定格式,可以匹配所包含的字符之外的任意一个字符。

说明
正则表达式中的特殊符号,如果被包含于中括号中,则失去特殊意义,但 \ [ ] : ^ - 除外。

标准字符集合,除小数点(.)外,如果被包含于中括号中,自定义字符集合将包含该集合。
比如:[\d.\-+],将可以匹配数字,小数点和 + - 符号。(小数点和 + 号失去特殊意义)

用减号相连的 2 个普通字符,自定义字符集合将包含该范围。
比如:[\dA-Fa-f],将可以匹配 0 - 9, A - F, a - f。
己闻楣Sx
2011-12-19 · TA获得超过1935个赞
知道大有可为答主
回答量:1057
采纳率:93%
帮助的人:908万
展开全部
很简单,要按套路出牌呀。圆括号的功能是分组,方括号才是字符集合。一定要用圆括号,可以用断言,如下:<a(?:(?!>).)+>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式