[請問] regexp的replace?

看板RegExp (正規表示式 Regular Expression)作者 (cralvin)時間4年前 (2020/10/29 13:42), 編輯推噓4(405)
留言9則, 3人參與, 4年前最新討論串1/2 (看更多)
[FL-clover、door、(天満春華)]返せ、かわり、○○で。(東方) [FL-clover,door,(天満春華)]返せ、かわり、○○で。(東方) 如上例想把[]範圍內的n個、取代成, n不固定 ^([^\n[]*?\[[^]]*?)、([^]]*\]) $1,$2 上面一次只能取代一個,請問要怎才能處理n個? thx -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.242.17.180 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/RegExp/M.1603950151.A.C72.html

10/29 14:36, 4年前 , 1F
、(?=[^]]*])
10/29 14:36, 1F

10/29 23:15, 4年前 , 2F
原來任意字元還有 [^] 這種表示法喔?
10/29 23:15, 2F

10/29 23:16, 4年前 , 3F
但還是看不懂為何最後的 ] 的前面還要加上 ]* 才能限定只找
10/29 23:16, 3F

10/29 23:17, 4年前 , 4F
到在 ] 前方的頓號
10/29 23:17, 4F

10/29 23:38, 4年前 , 5F
[^]] 抓出一個不是 ] 的字, 加 * 抓出零至多個不是 ] 的字
10/29 23:38, 5F

10/29 23:38, 4年前 , 6F
之所以可以這樣寫是因為, 雖然 ] 在 [ 之後是特殊字元
10/29 23:38, 6F

10/29 23:40, 4年前 , 7F
但 [^] 是沒有意義的, 所以規定如果在 [^ 之後馬上看到 ]
10/29 23:40, 7F

10/29 23:40, 4年前 , 8F
就當它是普通的 ], 這樣 [^]] 就能解釋成不是 ] 的字
10/29 23:40, 8F

10/30 06:22, 4年前 , 9F
感謝解說,看來網站上的解析是錯誤的
10/30 06:22, 9F
文章代碼(AID): #1VcbP7no (RegExp)
討論串 (同標題文章)
文章代碼(AID): #1VcbP7no (RegExp)