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 if 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 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.