1111^.*\b[Cc][Ss][Pp][Ee][Ll]{2}:\s*[Dd][Ii][Ss][Aa][Bb][Ll][Ee]-[Ll][Ii][Nn][Ee]\b
1212
1313# copyright
14- Copyright (?:\([Cc]\)|)(?:[-\d, ]|and)+(?: [A-Z][a-z]+ [A-Z][a-z]+,?)+
14+ Copyright (?:\([Cc]\)|©| )(?:[-\d, ]|and)+(?: [A-Z][a-z]+ [A-Z][a-z]+,?)+
1515
1616# patch hunk comments
1717^@@ -\d+(?:,\d+|) \+\d+(?:,\d+|) @@ .*
1818# git index header
1919index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
2020
2121# file permissions
22- ['"`\s](?!-+\s)[-bcdLlpsw](?:[-r][-w][-Ssx]){2}[-r][-w][-SsTtx]\+?['"`\s]
22+ (?:^| ['"`\s]) (?!-+\s)[-bcdLlpsw](?:[-r][-w][-Ssx]){2}[-r][-w][-SsTtx]\+?['"`\s]
2323
2424# css fonts
2525\bfont(?:-family(?:[-\w+]*)|):[^;}]+
@@ -87,6 +87,9 @@ arn:aws:[-/:\w]+
8787# AWS VPC
8888vpc-\w+
8989
90+ # Azure AD
91+ \baad\.\w{48}\b
92+
9093# While you could try to match `http://` and `https://` by using `s?` in `https?://`, sometimes there
9194# YouTube url
9295\b(?:(?:www\.|)youtube\.com|youtu.be)/(?:channel/|embed/|user/|playlist\?list=|watch\?v=|v/|)[-a-zA-Z0-9?&=_%]*
@@ -237,7 +240,7 @@ accounts\.binance\.com/[a-z/]*oauth/authorize\?[-0-9a-zA-Z&%]*
237240\bmedium\.com/@?[^/\s"]+/[-\w]+
238241
239242# microsoft
240- \b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%]*
243+ \b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%?# ]*
241244# powerbi
242245\bapp\.powerbi\.com/reportEmbed/[^"' ]*
243246# vs devops
@@ -411,7 +414,7 @@ ipfs://[0-9a-zA-Z]{3,}
411414\bgetopts\s+(?:"[^"]+"|'[^']+')
412415
413416# ANSI color codes
414- (?:\\(?:u00|x)1[Bb]|\\03[1-7]|\x1b|\\u\{1[Bb]\})\[\d+(?:;\d+)*m
417+ (?:\\(?:u00|x)1[Bb]|\\03[1-7]|\x1b|\\u\{1[Bb]\})\[(?: \d+(?:;\d+)*|) m
415418
416419# URL escaped characters
417420%[0-9A-F][A-F](?=[A-Za-z])
@@ -452,7 +455,11 @@ LS0tLS1CRUdJT.*
452455
453456# uuid:
454457\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
455- # hex digits including css/html color classes:
458+
459+ # unicode escaped characters (4)
460+ \\u[0-9a-fA-F]{4}
461+
462+ # hex digits including css/html color classes
456463(?:[\\0][xX]|\\u\{?|[uU]\+|#x?|%23|&H)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
457464
458465# integrity
@@ -475,7 +482,7 @@ Name\[[^\]]+\]=.*
475482#(?:(?:\b|_|(?<=[a-z]))I|(?:\b|_)(?:nsI|isA))(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b))
476483
477484# python
478- \b(?i)py(?!gments |gmy|lon|ramid|ro|th)(?=[a-z]{2,})
485+ \b(?i)py(?!gment |gmy|lon|ramid|ro|th)(?=[a-z]{2,})
479486
480487# crypt
481488(['"])\$2[ayb]\$.{56}\g{-1}
@@ -496,7 +503,7 @@ Name\[[^\]]+\]=.*
496503\bh1:\S+
497504
498505# golang print-f-style functions
499- (?i)(?<=append|comma|debug|equal|err|error|exit|fatal|format|info|log|name|panic|print|skip|scan|string|trace|true|warn|warning|wrap|write)(?:f|ln)[ (]
506+ (?i)(?<=append|comma|debug|equal|err|error|exit|fatal|format|info|log|name|panic|print|skip|scan|string|trace|true|warn|warning|wrap|write)(?:f|ln)(?: [ (]|$)
500507
501508# golang regular expression
502509(?<!")\br".+?"
@@ -545,6 +552,9 @@ content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
545552# Regular expressions for (P|p)assword
546553\([A-Z]\|[a-z]\)[a-z]+
547554
555+ # Java regular expressions
556+ Pattern\.(?:compile|matches)\(".*"
557+
548558# JavaScript regular expressions
549559# javascript exec/test regex
550560/.{3,}?/[gim]*\.(?:exec|test)\(
@@ -597,6 +607,9 @@ urn:shemas-jetbrains-com
597607# Debian changelog severity
598608[-\w]+ \(.*\) (?:\w+|baseline|unstable|experimental); urgency=(?:low|medium|high|emergency|critical)\b
599609
610+ # Red Hat Package management spec file dependencies
611+ ^(?:Build|)Requires: [-.\w]+
612+
600613# kubernetes pod status lists
601614# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
602615\w+(?:-\w+)+\s+\d+/\d+\s+(?:Running|Pending|Succeeded|Failed|Unknown)\s+
@@ -651,6 +664,8 @@ PrependWithABINamepsace
651664>[-a-zA-Z=;:/0-9+]{3,}=</
652665# base64 encoded content, possibly wrapped in mime
653666#(?:^|[\s=;:?])[-a-zA-Z=;:/0-9+]{50,}(?:[\s=;:?]|$)
667+ # jwt
668+ (?:\be[wy][-a-zA-Z=;:/0-9+]+\.){2}[-_\w]+
654669# base64 encoded json
655670\beyJ[-a-zA-Z=;:/0-9+]+
656671# base64 encoded pkcs
@@ -702,7 +717,7 @@ systemd.*?running in system mode \([-+].*\)$
702717# This corpus only had capital letters, but you probably want lowercase ones as well.
703718\b[LN]'+[a-z]{2,}\b
704719
705- # latex (check-spelling >= 0.0.22)
720+ # LaTeX
706721\\\w{2,}\{
707722
708723# American Mathematical Society (AMS) / Doxygen
@@ -729,7 +744,6 @@ nolint:\s*[\w,]+
729744# cygwin paths
730745/cygdrive/[a-zA-Z]/(?:Program Files(?: \(.*?\)| ?)(?:/[-+.~\\/()\w ]+)*|[-+.~\\/()\w])+
731746
732- # in check-spelling@v0.0.22+, printf markers aren't automatically consumed
733747# printf markers
734748#(?<!\\)\\[nrt](?=[a-z]{2,})
735749# alternate printf markers if you run into latex and friends
@@ -758,12 +772,12 @@ W/"[^"]+"
758772
759773# Compiler flags (Unix, Java/Scala)
760774# Use if you have things like `-Pdocker` and want to treat them as `docker`
761- #(?:^|[\t ,>"'`=(#])-(?:(?:J-|)[DPWXY]|[Llf])(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
775+ #(?:^|[\t ,>"'`=\[ (#])-(?:(?:J-|)[DPWXY]|[Llf])(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
762776
763777# Compiler flags (Windows / PowerShell)
764778# This is a subset of the more general compiler flags pattern.
765779# It avoids matching `-Path` to prevent it from being treated as `ath`
766- #(?:^|[\t ,"'`=(#])-(?:[DPL](?=[A-Z]{2,})|[WXYlf](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,}))
780+ #(?:^|[\t ,"'`=\[ (#])-(?:[DPL](?=[A-Z]{2,})|[WXYlf](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,}))
767781
768782# Compiler flags (linker)
769783,-B
@@ -782,7 +796,7 @@ W/"[^"]+"
782796# curl arguments
783797\b(?:\\n|)curl(?:\.exe|)(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
784798# set arguments
785- \b(?:bash|sh|set)(?:\s+[-+][abefimouxE]{1,2})*\s+[-+][abefimouxE]{3,}(?:\s+[-+][abefimouxE]+)*
799+ \b(?:bash|(?<!\.) sh|set)(?:\s+[-+][abefimouxE]{1,2})*\s+[-+][abefimouxE]{3,}(?:\s+[-+][abefimouxE]+)*
786800# tar arguments
787801\b(?:\\n|)g?tar(?:\.exe|)(?:\s-C \S+|(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+
788802# tput arguments -- https://man7.org/linux/man-pages/man5/terminfo.5.html -- technically they can be more than 5 chars long...
0 commit comments