カンマで区切られた値の文字列を一致させる方法を見つけようとして、値を独自のキャプチャ グループに分割する方法を理解しようと、私は長い間これに取り組んできました。ここに私の要件があります:
- 先頭のコンマなし
- 用語は、1 ~ 7 文字の英数字にすることができます
- 最小: 1 学期。最大: 無制限
- 用語とコンマの間の無制限の空白
- 末尾のカンマなし
私は非常に近いですが、文字列内のすべての用語を独自のキャプチャ グループに入れることはできません。代わりに、すべての一致を前のグループに配置する代わりに、最初のキャプチャ グループから最後に一致した用語をグループ #1 に配置します。だからここに私の例があります:
abc1234、def5678、ghi9012
abc1234 がグループ #1、def5678 がグループ #2、ghi9012 がグループ #3 になると予想します。代わりに、以下の式を使用すると、グループ #1 で def5678 を取得し、グループ #2 で ghi9012 を取得します。
/(?:([A-z0-9]{1,7})\s*,\s*)+([A-z0-9]{1,7})/g
キャプチャ/非キャプチャ グループを正しく設定していないと確信しています。どんな助けでも大歓迎です。