В регулярных выражениях $
будет обозначать конец строки, и поэтому, если вы хотите сопоставить фактический $, вам нужно будет "экранировать" его, как \$
.
В grep
в R необходимо использовать \\
следующим образом:
x <- "Get $50 off on purchases of new bed frames"
grep("\\$\\d+", x)