이 코드가 있습니다.
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,}
는*
.