cari

Rumah  >  Soal Jawab  >  teks badan

Ungkapan biasa - cara memadankan pasangan kurungan segi empat sama dalam vim

Nampaknya saya menggunakan [match[, use] untuk memadankan]. Saya boleh menggunakan [*] untuk memadankan pasangan kurungan, tetapi a[*] tidak boleh memadankan pasangan kurungan dengan a di hadapan (array a), dan menggunakan a [ Tetapi ia boleh memadankan a dan kurungan kiri selepas a.

phpcn_u1582phpcn_u15822742 hari yang lalu939

membalas semua(2)saya akan balas

  • 高洛峰

    高洛峰2017-05-16 16:43:46

    \[*]匹配的是0到多个[,后面是一个],例如],[],[[]等
    中间的*匹配的[,并不是指中括号中间的任意字符重复0-N次。
    
    中括号中间的任意字符,简单的话可以使用.*表示,但是同一行有多个中括号的话会全部匹配,如:
    a[i+1]= b[i-1]这样的表达式会被全部匹配。
    
    试一下下面这个,应该可以匹配a后面的带中括号的表达式
    a\[[^]]*]   
    

    balas
    0
  • 黄舟

    黄舟2017-05-16 16:43:46

    Hasil ujian saya ialah a[*] boleh memadankan a[]. Sudah tentu ia tidak boleh sepadan dengan a[i]. a[*] 可以匹配到 a[]。当然它不能匹配 a[i]

    不过,你确定要用 * 吗?你的「好像」让我很有给你正则表达式的教程的冲动……

    [...] 是用来匹配字符类的,比如 [abd] 匹配 a, b 或者 d 中的任何一个。因为 [] 已经有这个意思了,所以要匹配到 [ 字符需要转义 [,要匹配 ] 的话原则上也是要转义的 ],不过在不引起歧义的时候可以不转义。

    * 是一个量词,它表示前边那个字符(或者字符类字符组

    Tetapi adakah anda pasti mahu menggunakan *? "Suka" anda membuatkan saya terdesak untuk memberi anda tutorial tentang ungkapan biasa...🎜 🎜[...] digunakan untuk memadankan kelas aksara, contohnya, [abd] sepadan dengan a, < Sama ada kod>b atau d. Oleh kerana [] sudah mempunyai makna ini, untuk memadankan [ aksara perlu melarikan diri [ dan memadankan ] Pada dasarnya, ] harus dilepaskan, tetapi ia tidak perlu dilepaskan apabila ia tidak menyebabkan kekaburan. 🎜 🎜* ialah pengkuantiti, yang mewakili aksara sebelumnya (atau kelas aksara, kumpulan aksara< /code>) boleh muncul beberapa kali (0 kali kiraan). 🎜

    balas
    0
  • Batalbalas