Zerowidth CleanerMeasured guides

CLAUDE WATERMARK REMOVER · DESTINATION TEST

Can a regex capture text while its full match is empty?

Yes. In this fixture the full lookahead match is empty, while capture one contains AB.

Tested 31 October 2026 · Synthetic fixtures · Minimal DOM

What the test establishes

The destination expression asserts the presence of AB at the current position. Its capture records those letters even though the assertion consumes none of them. A consumer that sizes an exported annotation from the full match will therefore allocate zero length. Inspect the intended capture or use a consuming expression when the destination needs the letters themselves rather than an assertion position.

Reproduce the observation

Save tested-app.js and reproduce.cjs together, then run node reproduce.cjs. Compare its output with the recorded observation. The harness executes the actual homepage callback in a minimal DOM and records its resulting field values and method calls. Destination operations run in Node.js; the homepage DOM is a controlled substitute. Runtime: v24.22.1. No submitted text or genuine Claude output is used.

{
  "cleaned": "AB",
  "full": "",
  "capture": "AB",
  "index": 0
}

Capability boundary

One non-global execution is measured. It does not test iteration progress, replacements, or optional unmatched captures; the captured value here is present.

This Claude watermark remover edits a small selected character set. These callback observations do not establish authorship, detector scores, statistical-watermark removal or end-to-end browser behavior. For real work, keep the original and compare the exact result at its destination.

Primary material and next step

The tested first-party source snapshot and complete harness are the primary material for this page. For broader scope, read invisible Unicode versus AI watermarks, or return to the cleaner.