Visual Simultaneous Localization and Mapping (SLAM) systems assume a static world. They usually fail under adverse weather conditions. In this paper, we propose a robust monocular SLAM system that is able to work under rainy conditions in urban environments reliably. To recover camera ego-motion from images with rain streaks, we apply a superpixel-based image content alignment method for the static background modelling. With coarse outputs estimated through averaging temporal matches, image details are recovered by a Convolutional Neural Network (CNN). Based on the statistic distribution of intensity variance between original and reconstructed image pairs, a robust and noise-sensitive weight function is explored for rejecting outliers when estimating camera poses. Quantitative evaluation results on the CARLA and synthetic KITTI datasets demonstrate the reliability of the proposed system and its superiority over the state-of-the-art approaches.