[请问] regexp的replace?

楼主: vernc (cralvin)   2020-10-29 13:42:29
[FL-clover、door、(天満春华)]返せ、かわり、○○で。(东方)
[FL-clover,door,(天満春华)]返せ、かわり、○○で。(东方)
如上例想把[]范围内的n个、取代成, n不固定
^([^\n[]*?\[[^]]*?)、([^]]*\])
$1,$2
上面一次只能取代一个,请问要怎才能处理n个?
thx
作者: cutekid (可爱小孩子)   2020-10-29 14:36:00
、(?=[^]]*])
作者: art1 (人,原来不是人)   2020-10-29 23:15:00
原来任意字符还有 [^] 这种表示法喔?但还是看不懂为何最后的 ] 的前面还要加上 ]* 才能限定只找到在 ] 前方的顿号
作者: LPH66 (-6.2598534e+18f)   2020-10-29 23:38:00
[^]] 抓出一个不是 ] 的字, 加 * 抓出零至多个不是 ] 的字之所以可以这样写是因为, 虽然 ] 在 [ 之后是特殊字符但 [^] 是没有意义的, 所以规定如果在 [^ 之后马上看到 ]就当它是普通的 ], 这样 [^]] 就能解释成不是 ] 的字
作者: art1 (人,原来不是人)   2020-10-30 06:22:00
感谢解说,看来网站上的解析是错误的

Links booklink

Contact Us: admin [ a t ] ucptt.com