Image sets: sizes in brackets and one-word set names
Old picture groups split every image into a release (the reset's first hour: 583k releases, 447k of one file; a.b.pictures.erotica.high-heels 262k): "Aletta Ocean - \"100628-035.jpg\" yEnc [347K]" kept its size in the remainder, and "Corie - \"2877-041.jpg\" yEnc [290K]" named its set with one word, which namesRelease (two words) refused, so the image's own name keyed it. Sizes like [347K] (and a cut-off "336573 byt") are removed; for images a one-word subject (3+ letters) names the set. On 100k high-heels articles: 4,509 releases -> 192. Both implementations; tests; fixtures identical. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
47b445ffb0
commit
b1213fbea0
3 files changed
+37
-6
No files matched your search
@@ -74,8 +74,9 @@ export function subjectRemainder(subject: string): string {
|
||||
.replace(/\[(\d+)-(\d+)\]/g, counter)
|
||||
.replace(/\b(\d+)\/(\d+)\b/g, counter)
|
||||
.replace(/\b(0\d*)-(\d+)\b/g, counter)
|
||||
// File sizes ("76.88 MB", "335555 Bytes") differ per file.
|
||||
.replace(/\b\d+(?:[.,]\d+)?\s*(?:[kmgt]i?b|bytes?)\b/gi, ' ')
|
||||
// File sizes ("76.88 MB", "335555 Bytes", "336573 byt" cut off, "[347K]") differ per file.
|
||||
.replace(/\b\d+(?:[.,]\d+)?\s*(?:[kmgt]i?b|bytes?|byt)\b/gi, ' ')
|
||||
.replace(/\[\s*\d+(?:[.,]\d+)?\s*[kmgt]\s*\]/gi, ' ')
|
||||
// File sizes follow "yEnc" at the end; other numbers (years, post ids) stay.
|
||||
.replace(/\byEnc\b(\s+\d+)?\s*$/i, ' ')
|
||||
.replace(/\byEnc\b/gi, ' ')
|
||||
@@ -217,7 +218,8 @@ export function releaseIdentity(input: ReleaseInput): ReleaseIdentity | null {
|
||||
// An image set without a counter: the image's name up to its last number, without numbers
|
||||
// ("Kitchen Hottie 1 set233-76-lg" → "Kitchen Hottie set", "bm_jessica_blb_h087" → "bm jessica blb h").
|
||||
const prefix = image ? stem.replace(/\d+\D*$/, '').replace(/\d+/g, ' ').replace(/[\s._-]+/g, ' ').trim() : ''
|
||||
if (!tag && namesRelease(remainder)) {
|
||||
// An image set's subject may be one word, the model's name ("Corie - "2877-041.jpg" yEnc [290K]").
|
||||
if (!tag && (namesRelease(remainder) || (image && /^[A-Za-z]{3,}$/.test(remainder)))) {
|
||||
// Bounded by the counter's total, so the uploads a poster names alike are apart while the files
|
||||
// of one upload (par2 and nfo included) share it (LOG.md 2026-10-09 (9)).
|
||||
const total = counterTotal(input.subject)
|
||||
|
||||
Reference in new issue
Block a user