Skip to content

Grep Mastery: URLs, Credit Cards, and IPs

Discover the art of efficient pattern matching using grep for URLs, credit cards, and IP addresses with detailed examples and use cases.


URL Matching

Basic grep to match HTTP URLs

grep -Eo 'http://[^ ]+' filename

Basic grep to match HTTPS URLs

grep -Eo 'https://[^ ]+' filename

Basic grep to match FTP URLs

grep -Eo 'ftp://[^ ]+' filename

Grep with case-insensitive matching for HTTP or HTTPS URLs

grep -Eio 'https?://[^ ]+' filename

Grep with word boundaries to match HTTP, HTTPS, or FTP URLs

grep -Eo '\b(https?|ftp)://[^ ]+\b' filename

Grep to match URLs starting with HTTP, HTTPS, or FTP

grep -Eo '^(http|https|ftp)://[^ ]+' filename

Grep with line numbers for HTTP or HTTPS URLs

grep -Eno 'https?://[^ ]+' filename

Grep with inverted match to exclude HTTP, HTTPS, or FTP URLs

grep -vE '(http|https|ftp)://[^ ]+' filename

Grep to match URLs containing specific domain names (example: google.com)

grep -Eo 'https?://[^ ]+google\.com[^ ]*' filename

Grep to match URLs with query parameters (example: ?key=value)

grep -Eo 'https?://[^ ]+\?[^ ]+' filename

Basic grep to match HTTP URLs within href attributes

grep -Eo 'href="http://[^"]+' filename

Basic grep to match HTTPS URLs within href attributes

grep -Eo 'href="https://[^"]+' filename

Basic grep to match FTP URLs within href attributes

grep -Eo 'href="ftp://[^"]+' filename

Grep with case-insensitive matching for HTTP or HTTPS URLs within href attributes

grep -Eio 'href="https?://[^"]+' filename

Grep with word boundaries to match HTTP, HTTPS, or FTP URLs within href attributes

grep -Eo 'href="\b(https?|ftp)://[^"]+\b' filename

Grep to match URLs starting with HTTP, HTTPS, or FTP within href attributes

grep -Eo 'href="^(http|https|ftp)://[^"]+' filename

Grep with line numbers for HTTP or HTTPS URLs within href attributes

grep -Eno 'href="https?://[^"]+' filename

Grep with inverted match to exclude HTTP, HTTPS, or FTP URLs within href attributes

grep -vE 'href="(http|https|ftp)://[^"]+' filename

Grep to match URLs containing specific domain names within href attributes (example: google.com)

grep -Eo 'href="https?://[^"]+google\.com[^"]*' filename

Grep to match URLs with query parameters within href attributes (example: ?key=value)

grep -Eo 'href="https?://[^"]+\?[^"]+' filename

Credit Card Matching

Amex Card

grep -Eo '^3[47][0-9]{13}$' filename

BCGlobal

grep -Eo '^(6541|6556)[0-9]{12}$' filename

Carte Blanche Card

grep -Eo '^389[0-9]{11}$' filename

Diners Club Card

grep -Eo '^3(?:0[0-5]|[68][0-9])[0-9]{11}$' filename

Discover Card

grep -Eo '^65[4-9][0-9]{13}|64[4-9][0-9]{13}|6011[0-9]{12}|(622(?:12[6-9]|1[3-9][0-9]|[2-8][0-9][0-9]|9[01][0-9]|92[0-5])[0-9]{10})$' filename

Insta Payment Card

grep -Eo '^63[7-9][0-9]{13}$' filename

JCB Card

grep -Eo '^(?:2131|1800|35\d{3})\d{11}$' filename

KoreanLocalCard

grep -Eo '^9[0-9]{15}$' filename

Laser Card

grep -Eo '^(6304|6706|6709|6771)[0-9]{12,15}$' filename

Maestro Card

grep -Eo '^(5018|5020|5038|6304|6759|6761|6763)[0-9]{8,15}$' filename

Mastercard

grep -Eo '^(5[1-5][0-9]{14}|2(22[1-9][0-9]{12}|2[3-9][0-9]{13}|[3-6][0-9]{14}|7[0-1][0-9]{13}|720[0-9]{12}))$' filename

Solo Card

grep -Eo '^(6334|6767)[0-9]{12}|(6334|6767)[0-9]{14}|(6334|6767)[0-9]{15}$' filename

Switch Card

grep -Eo '^(4903|4905|4911|4936|6333|6759)[0-9]{12}|(4903|4905|4911|4936|6333|6759)[0-9]{14}|(4903|4905|4911|4936|6333|6759)[0-9]{15}|564182[0-9]{10}|564182[0-9]{12}|564182[0-9]{13}|633110[0-9]{10}|633110[0-9]{12}|633110[0-9]{13}$' filename

Union Pay Card

grep -Eo '^(62[0-9]{14,17})$' filename

Visa Card

grep -Eo '^4[0-9]{12}(?:[0-9]{3})?$' filename

Visa Master Card

grep -Eo '^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14})$' filename

IP Address Matching

Basic grep to match IPv4 addresses

grep -Eo '\b([0-9]{1,3}\.){3}[0-9]{1,3}\b' filename

Grep to match IPv4 addresses with octet ranges (0-255)

grep -Eo '\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b' filename

Grep to match IPv4 addresses with CIDR notation

grep -Eo '\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}/([0-9]|[1-2][0-9]|3[0-2])\b' filename

Basic grep to match IPv6 addresses

grep -Eo '\b([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}\b' filename

Grep to match IPv6 addresses with full notation (including zeros)

grep -Eo '\b([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}\b' filename

Grep to match IPv6 addresses with collapsed notation (compressing consecutive zeros)

grep -Eo '\b(([0-9a-fA-F]{1,4}:){1,6}|::([0-9a-fA-F]{1,4}:){0,5}|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){0,4}|([0-9a-fA-F]{1,4}(:|$)){1,7})\b' filename

Social Security Number Matching

Grep to match Swedish social security numbers (12 characters, format: yyyymmdd-xxxx)

grep -Eo '\b[0-9]{8}-[0-9]{4}\b' filename

Grep to match Swedish social security numbers (10 characters, format: yymmdd-xxxx)

grep -Eo '\b[0-9]{6}-[0-9]{4}\b' filename

Grep to match Russian social security numbers (format: xxx-xxx-xxx xx)

grep -Eo '\b[0-9]{3}-[0-9]{3}-[0-9]{3} [0-9]{2}\b' filename

Grep to match Russian social security numbers (format: xxxxxxxxx)

grep -Eo '\b[0-9]{10}\b' filename

Grep to match USA social security numbers (format: xxx-xx-xxxx)

grep -Eo '\b[0-9]{3}-[0-9]{2}-[0-9]{4}\b' filename

Grep to match USA social security numbers (format: xxxxxxxxx)

grep -Eo '\b[0-9]{9}\b' filename

Vehicle Registration Number Matching

Grep to match Swedish vehicle registration numbers (format: ABC-123)

grep -Eo '\b[A-Z]{3}-[A-Z]{3}\b' filename

Grep to match Russian vehicle registration numbers (format: A 999 AA 77)

grep -Eo '\b[A-Z]\s[0-9]{3}\s[A-Z]{2}\s[0-9]{2}\b' filename

Grep to match United States vehicle registration numbers (format: AAA 9999)

grep -Eo '\b[A-Z]{3}\s[0-9]{4}\b' filename

MAC Address Matching

Grep to match MAC addresses in the format XX:XX:XX:XX:XX:XX

grep -Eo '\b([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})\b' filename

IMSI Number Matching

Grep to match IMSI numbers (International Mobile Subscriber Identity) in the format MCCMNC-MSIN

grep -Eo '\b\d{3}\d{2}-\d{6,10}\b' filename

IMEI Number Matching

Grep to match IMEI numbers (International Mobile Equipment Identity) in the format AA-BBBBBB-CCCCCC-D

grep -Eo '\b\d{2}-\d{6}-\d{6}-\d\b' filename

Scene Release Matching

Grep to match scene release names in the format GROUP.TITLE.RELEASE

grep -Eo '\b[A-Za-z0-9]+(\.[A-Za-z0-9]+){2}\b' filename

Timestamp and Datestamp Matching

Grep to match timestamps in the format HH:MM:SS

grep -Eo '\b([01]\d|2[0-3]):([0-5]\d):([0-5]\d)\b' filename

Grep to match datestamps in the format YYYY-MM-DD

grep -Eo '\b\d{4}-\d{2}-\d{2}\b' filename

Logging Patterns in dmesg

Grep to match error messages in dmesg logs

grep -Ei 'error' filename

Grep to match normal messages in dmesg logs

grep -Ei 'normal' filename

Grep to match info messages in dmesg logs

grep -Ei 'info' filename

Grep to match debugging messages in dmesg logs

grep -Ei 'debug' filename