• jgruber's avatar
    Revert of [regexp] Named capture support for string replacements (patchset #5... · 34ffdd62
    jgruber authored
    Revert of [regexp] Named capture support for string replacements (patchset #5 id:80001 of https://codereview.chromium.org/2775303002/ )
    
    Reason for revert:
    Invalid DCHECKs for non-matched groups.
    
    Original issue's description:
    > [regexp] Named capture support for string replacements
    >
    > This implements support for named captures in
    > RegExp.prototype[@@replace] for when the replaceValue is not callable.
    >
    > Named captures can be referenced from replacement strings by using the
    > "$<name>" syntax. A couple of examples:
    >
    > let re = /(?<fst>.)(?<snd>.)/u;
    > "abcd".replace(re, "$<snd>$<fst>")  // "bacd"
    > "abcd".replace(re, "$2$1")     // "bacd" (numbered refs work as always)
    > "abcd".replace(re, "$<snd")    // SyntaxError (unterminated named ref)
    > "abcd".replace(re, "$<42$1>")  // "cd" (invalid name)
    > "abcd".replace(re, "$<thd>")   // "cd" (non-existent name)
    > "abcd".replace(/(?<fst>.)|(?<snd>.)/u, "$<snd>")  // "cd" (non-matched capture)
    >
    > Support is currently behind the --harmony-regexp-named-captures flag.
    >
    > BUG=v8:5437
    >
    > Review-Url: https://codereview.chromium.org/2775303002
    > Cr-Commit-Position: refs/heads/master@{#44171}
    > Committed: https://chromium.googlesource.com/v8/v8/+/17f13863b64b25eccf565e0aa9c4c441f0562b84
    
    TBR=yangguo@chromium.org,littledan@chromium.org
    # Skipping CQ checks because original CL landed less than 1 days ago.
    NOPRESUBMIT=true
    NOTREECHECKS=true
    NOTRY=true
    BUG=v8:5437
    
    Review-Url: https://codereview.chromium.org/2776293003
    Cr-Commit-Position: refs/heads/master@{#44180}
    34ffdd62
runtime-strings.cc 25.5 KB