/^#{%w(arg(?:ument)?s opt(?:ion)?s). zip(Array.new(2, "(?:_with_(\\w+))?")). map(&:join) * '_and_'}!?$/