Maybe
- The
?
operator matches a character zero or one times, but not more than one.
/^a?$/.test('a'); // true
/^a?$/.test(''); // true
/^a?$/.test('b'); // false
- The
?
operator affects whatever is immediately before it. For example, inab?
, the?
operators only affects “b”, not “a”. We say that it binds tightly.
/^ab?$/.test('a'); // true
/^(555-)?555-5555$/.test('555-555-5555'); // true
/^(555-)?555-5555$/.test('555-5555'); // true