84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
好像是用[匹配[,用]匹配],我用[*]可以匹配到中括号对,但是a[*]并不能匹配到有a在前面的括号对(数组a),而用a[却可以匹配到a和a后面的左中括号,为什么?
雷雷
我测试结果是a[*]可以匹配到a[]。当然它不能匹配a[i]。
a[*]
a[]
a[i]
不过,你确定要用*吗?你的「好像」让我很有给你正则表达式的教程的冲动……
*
[...]是用来匹配字符类的,比如[abd]匹配a,b或者d中的任何一个。因为[]已经有这个意思了,所以要匹配到[字符需要转义[,要匹配]的话原则上也是要转义的],不过在不引起歧义的时候可以不转义。
[...]
字符类
[abd]
a
b
d
[]
[
]
*是一个量词,它表示前边那个字符(或者字符类、字符组是一个量词,它表示前边那个字符(或者字符类、字符组)可以出现任意多次(0 次也算)。
量词
字符
字符组
雷雷
我测试结果是
a[*]
可以匹配到a[]
。当然它不能匹配a[i]
。不过,你确定要用
*
吗?你的「好像」让我很有给你正则表达式的教程的冲动……[...]
是用来匹配字符类
的,比如[abd]
匹配a
,b
或者d
中的任何一个。因为[]
已经有这个意思了,所以要匹配到[
字符需要转义[
,要匹配]
的话原则上也是要转义的]
,不过在不引起歧义的时候可以不转义。*
是一个量词
,它表示前边那个字符
(或者字符类
、字符组
是一个量词
,它表示前边那个字符
(或者字符类
、字符组
)可以出现任意多次(0 次也算)。