How about, this for a positive integer?: `(string-match-p "^[0-9]+$" STRING)`

Or, this for either a positive or negative integer? `(string-match-p "^[-]?[0-9]+$" STRING)`

Note that `string-match-p`does not change match data, whereas `string-match` does.