6.2. Hexadecimal Numbers
Problem
You want to find hexadecimal numbers in a larger body of text, or check whether a string variable holds a hexadecimal number.
Solution
Find any hexadecimal number in a larger body of text:
\b[0-9A-F]+\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
\b[0-9A-Fa-f]+\b
Regex options: None |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Check whether a text string holds just a hexadecimal number:
\A[0-9A-F]+\Z
Regex options: Case insensitive |
Regex flavors: .NET, Java, PCRE, Perl, Python, Ruby |
^[0-9A-F]+$
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python |
Find a hexadecimal number with a 0x
prefix:
\b0x[0-9A-F]+\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Find a hexadecimal number with an &H
prefix:
&H[0-9A-F]+\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Find a hexadecimal number with an H
suffix:
\b[0-9A-F]+H\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Find a hexadecimal byte value or 8-bit number:
\b[0-9A-F]{2}\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Find a hexadecimal word value or 16-bit number:
\b[0-9A-F]{4}\b
Regex options: Case insensitive |
Regex flavors: .NET, Java, JavaScript, PCRE, Perl, Python, Ruby |
Find a hexadecimal double word value or 32-bit number:
\b[0-9A-F]{8}\b ...
Get Regular Expressions Cookbook, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.