# JoyShine File Seeker - Pattern Definitions
# Format: [Pattern Name] regex_pattern
# Lines starting with # are comments
#
# Add your own patterns below. Each line defines a named regex pattern
# that can be selected from the "Pattern File" search mode.

# --- Contact Information ---
[Email Address] \b[A-Za-z0-9._%+\-]{1,64}@[A-Za-z0-9.\-]{1,253}\.[A-Za-z]{2,63}\b
[Phone (US)] \b(\+?1[-.\s]?)?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}\b
[Phone (JP)] 0\d{1,4}[-\s]?\d{1,4}[-\s]?\d{3,4}
[Phone (KR)] \b01[016789][-\s]?\d{3,4}[-\s]?\d{4}\b
[Phone (International)] \+\d{1,3}[-.\s]?\d{1,4}[-.\s]?\d{1,4}[-.\s]?\d{1,9}

# --- Financial ---
[Credit Card] \b\d{4}[-\s]?\d{4}[-\s]?\d{4}[-\s]?\d{4}\b
[Bank Account (JP)] \b\d{7}\b
[Currency (USD)] \$\s?\d{1,3}(,\d{3})*(\.\d{2})?
[Currency (JPY)] \\?\d{1,3}(,\d{3})*\s?円
[Currency (KRW)] (₩\s?\d{1,3}(,\d{3}){0,10}|\d{1,3}(,\d{3}){0,10}\s?원)

# --- Identity ---
[SSN (US)] \b\d{3}[-\s]?\d{2}[-\s]?\d{4}\b
[My Number (JP)] \b\d{4}\s?\d{4}\s?\d{4}\b
[RRN (KR)] \b\d{6}[-\s]?\d{7}\b
[Business Number (KR)] \b\d{3}[-\s]?\d{2}[-\s]?\d{5}\b
[Passport Number] \b[A-Z]{1,2}\d{6,9}\b

# --- Network ---
[IP Address (IPv4)] \b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
[IP Address (IPv6)] \b([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}\b
[URL] https?://[^\s<>"]{1,4000}
[MAC Address] \b([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}\b
[Domain Name] \b[a-zA-Z0-9]([a-zA-Z0-9\-]{0,62}[a-zA-Z0-9])?\.[a-zA-Z]{2,63}\b

# --- Date/Time ---
[Date (YYYY-MM-DD)] \b\d{4}[-/]\d{1,2}[-/]\d{1,2}\b
[Date (MM/DD/YYYY)] \b\d{1,2}/\d{1,2}/\d{4}\b
[Date (JP)] \b(令和|平成|昭和)\d{1,2}年\d{1,2}月\d{1,2}日
[Date (KR)] \b\d{4}년\s?\d{1,2}월\s?\d{1,2}일\b

# --- Security ---
[Password Pattern] (password|passwd|pwd)\s{0,5}[=:]\s{0,5}\S{1,256}
[API Key Pattern] (api[_-]?key|apikey|token|secret)\s{0,5}[=:]\s{0,5}['"]?\S{1,256}
[Private Key] -----BEGIN\s{1,5}(RSA\s{1,5})?PRIVATE\s{1,5}KEY-----
[Hash (MD5)] \b[a-fA-F0-9]{32}\b
[Hash (SHA-256)] \b[a-fA-F0-9]{64}\b

# --- File Paths ---
[Windows Path] [A-Za-z]:\\[^\s<>"|?*]{1,4000}
[UNC Path] \\\\[^\s<>"|?*]{1,4000}
[Unix Path] /[^\s<>"|?*]{1,4000}
