新しいデベロッパー:
私は、以下の1行の文字列を持っています
10101010110001
私は1秒の間にすべて0をキャプチャしたいです
私は、次の正規表現を使用しました。
/(10+1)/
これは私に次のグループを与えました:
- 101
- 101
- 10001
私が欲しいものこれではないですが、私は(1がすでに前のグループに取り込まれていても)すべてのグループをしたいです:
- 101
- 101
- 101
- 101
- 10001
K.Dᴀᴠɪs:
あなたは、ほぼ考えを持っていました。あなたの解決策の問題は、すでにあなたは次の試合で使用することを1を消費していることです。
これを回避するには、肯定先読みを使用します。
/1(0+)(?=1)/
一致の一部であるから一致したときに1が消費される最初の、しかし正の先読みを防止2「1」、それだけアサート「1」が存在すること
ここにあなたの例を参照してくださいRegex101