Maison > Questions et réponses > le corps du texte
Il semble que j'utilise [match[, use] to match]. Je peux utiliser [*] pour faire correspondre la paire de supports, mais a[*] ne peut pas faire correspondre la paire de supports avec un devant (tableau a) et utiliser un [ Mais il peut correspondre à a et au crochet gauche après a. Pourquoi ?
高洛峰2017-05-16 16:43:46
\[*]匹配的是0到多个[,后面是一个],例如],[],[[]等
中间的*匹配的[,并不是指中括号中间的任意字符重复0-N次。
中括号中间的任意字符,简单的话可以使用.*表示,但是同一行有多个中括号的话会全部匹配,如:
a[i+1]= b[i-1]这样的表达式会被全部匹配。
试一下下面这个,应该可以匹配a后面的带中括号的表达式
a\[[^]]*]
黄舟2017-05-16 16:43:46
Le résultat de mon test est que a[*]
peut correspondre à a[]
. Bien sûr, il ne peut pas correspondre à a[i]
. a[*]
可以匹配到 a[]
。当然它不能匹配 a[i]
。
不过,你确定要用 *
吗?你的「好像」让我很有给你正则表达式的教程的冲动……
[...]
是用来匹配字符类
的,比如 [abd]
匹配 a
, b
或者 d
中的任何一个。因为 []
已经有这个意思了,所以要匹配到 [
字符需要转义 [
,要匹配 ]
的话原则上也是要转义的 ]
,不过在不引起歧义的时候可以不转义。
*
是一个量词
,它表示前边那个字符
(或者字符类
、字符组
*
? Ton "j'aime" me donne envie de te faire un tuto sur les expressions régulières...🎜
🎜[...]
est utilisé pour correspondre à la classe de caractères
, par exemple, [abd]
correspond à a
, < Soit code>b ou d
. Parce que []
a déjà cette signification, pour correspondre à [
, les caractères doivent échapper à [
et correspondre à ]
En principe, ]
doit être échappé, mais il n'est pas nécessaire de l'échapper lorsqu'il ne provoque pas d'ambiguïté. 🎜
🎜*
est un quantificateur
, qui représente le caractère
précédent (ou la classe de caractères
, le groupe de caractères< /code>) peut apparaître autant de fois que vous le souhaitez (0 fois compte). 🎜répondre0