私はこのコードを持っています:
var r = /(?:^\s*([^\s]*)\s*)(?:,\s*([^\s]*)\s*){0,}$/
var s = " a , b , c "
var m = s.match(r)
m => [" a , b , c ", "a", "c"]
文字列全体が一致しているように見えますが、どこに"b"
行ったのでしょうか。私はむしろ得ることを期待したい:
[" a , b , c ", "a", "b", "c"]
空白を削除したm.shift()
ような結果で実行できるようにs.split(',')
します。
正規表現に間違いがありString.prototype.match
ますか、それとも誤解しますか?
{0,}
同じ*
です。