I don't believe there is a rosbag play or record function like ROS has. You could parse out topics with the following and then loop as you mention, but it's much easier to plot the parsed messages as a time series for instance. As an example to graph odometry as an XY plot-
bagselect = select(bag, 'Topic', '/odom');
ts = timeseries(bagselect, 'Pose.Pose.Position.X', 'Pose.Pose.Position.Y');
A ROS style play and record would be a fantastic time saving addition to future Robotics System Toolbox versions.