Regex to check string contains only Hex characters

Yes, you can do that with a regular expression:

^[0-9A-F]+$

Explanation:

^            Start of line.
[0-9A-F]     Character class: Any character in 0 to 9, or in A to F.
+            Quantifier: One or more of the above.
$            End of line.

To use this regular expression in Java you can for example call the matches method on a String:

boolean isHex = s.matches("[0-9A-F]+");

Note that matches finds only an exact match so you don’t need the start and end of line anchors in this case. See it working online: ideone

You may also want to allow both upper and lowercase A-F, in which case you can use this regular expression:

^[0-9A-Fa-f]+$

Leave a Comment