Do you have to use grep? you could use awk like this:
awk '{if($[replace with the field number]>50)print$2}' < file.txt
assuming your fields are delimited by spaces, otherwise you could use -F flag to specify delimiter.
if you must use grep, then it's regular expression like you did. to make it 50 to 200 you will do:
cat file.txt|grep -E "([5-9][0-9]|1[0-9][0-9])$"
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…