我有这样的字符串;
[0]: http//www.somelink.com[Some Text][0]
[Some Text][0]
是可选的。它可以在那里。
我希望匹配[0]: http//www.somelink.com
,将0更改为1
为此我使用了这段代码; string.replace(/(\[)\d+(\]:.+)(\[.*?\]\[\d+\])?/, "$11$2");
但我猜是因为(\[.*?\]\[\d+\])?
是可选的,+
会消耗所有字符,即使有[某些文字] [0]或不是
我也试过string.replace(/(\[)\d+(\]:[^\\[]+)(\[.*?\]\[\d+\])?/, "$11$2");
这有效但是如果有[之前[Some Text] [0] +
停止匹配
我也试过这个string.replace(/(\[)\d+(\]:.+)(?!\[.*?\]\[\d+\])/, "$11$2");
,但再次+消耗所有内容
有没有办法匹配每个角色,包括[
,直到[Some Text][0]?
答案 0 :(得分:0)