regex dp impl