Skip to content

Multiline Regex Search/Replace doesn't capture groups with lookbehind #254715

@divisa-developer

Description

@divisa-developer

Type: Bug

  1. Search a pattern that includes a valid(fixed length) look behind for search, eg: (?<=getRootTableRegistryName(): string\n\s{4}{\n\s{8}return\s')(\w+)(?=';)

It matches something like

getRootTableRegistryName(): string
    {
        return 'Audits';
  1. Try to replace the match, using a capture group, replacing for something like 'NameSpace.$1'.

Expected replacement:

getRootTableRegistryName(): string
    {
        return 'NameSpace.Audits';

Actual:

getRootTableRegistryName(): string
    {
        return 'NameSpace.$1';

If the lookbehind is made a normal capture group, then the capture groups on replacement work like intended.

VS Code version: Code 1.101.2 (2901c5a, 2025-06-24T20:27:15.391Z)
OS version: Windows_NT x64 10.0.22631
Modes:
Remote OS version: Linux x64 6.6.87.2-microsoft-standard-WSL2

System Info
Item Value
CPUs AMD Ryzen 7 5800H with Radeon Graphics (16 x 3194)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 15.86GB (1.97GB free)
Process Argv --folder-uri file:///c%3A/Users/desarrollo/econfirming_tasks --crash-reporter-id cf6a3676-768b-4ec3-a629-4f9d2e17bc51
Screen Reader no
VM 0%
Item Value
Remote Dev Container: Econfirming
OS Linux x64 6.6.87.2-microsoft-standard-WSL2
CPUs AMD Ryzen 7 5800H with Radeon Graphics (16 x 0)
Memory (System) 7.68GB (2.10GB free)
VM 0%
Extensions (35)
Extension Author (truncated) Version
Bookmarks ale 13.5.0
remotehub Git 0.64.0
theme-monokai-pro-vscode mon 2.0.7
remote-containers ms- 0.417.0
remote-ssh ms- 0.120.0
remote-ssh-edit ms- 0.87.0
remote-wsl ms- 0.99.0
azure-repos ms- 0.40.0
remote-explorer ms- 0.5.0
remote-repositories ms- 0.42.0
vscode-speech ms- 0.16.0
material-icon-theme PKi 5.24.0
material-product-icons PKi 1.7.1
vscode-fix-checksums-next Rim 1.4.0
synthwave-vscode Rob 0.1.19
pdf tom 1.2.2
jinja who 0.0.8
vscode-log-viewer ber 0.14.1
vscode-office cwe 3.5.4
vscode-eslint dba 3.0.10
composer-php-vscode DEV 1.59.17515
intelli-php-vscode DEV 0.12.17635
phptools-vscode DEV 1.59.17515
profiler-php-vscode DEV 1.59.17515
gitlens eam 17.2.2
EditorConfig Edi 0.17.4
copilot Git 1.341.0
copilot-chat Git 0.28.5
vscode-containers ms- 2.0.3
vscode-docker ms- 2.0.0
postman-for-vscode Pos 1.13.1
vscode-xml red 0.28.1
vscode-yaml red 1.18.0
command-variable rio 1.67.0
sonarlint-vscode Son 4.26.0

(12 theme extensions excluded)

A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
binariesv615:30325510
c4g48928:30535728
azure-dev_surveyone:30548225
962ge761:30959799
2e7ec940:31000449
cppperfnew:31000557
dwnewjupyter:31046869
nativeloc1:31344060
5fd0e150:31155592
dwcopilot:31170013
6074i472:31201624
dwoutputs:31242946
customenabled:31248079
9064b325:31222308
copilot_t_ci:31333650
e5gg6876:31282496
pythoneinst12:31285622
4gafe986:31271826
c7cif404:31314491
pythonpulldiag:31343502
996jf627:31283433
pythonrdcb7:31342333
usemplatestapi:31297334
0aa6g176:31307128
7bj51361:31289155
747dc170:31275177
aj953862:31281341
generatesymbolt:31295002
convertfstringf:31295003
pylancequickfixt:31329274
j6a0c355:31339598
0g0a1943:31341127
d7aab740:31338110
usemarketplace:31343026
nesew2to5:31336538
agentclaude:31335815
nes-diff-11:31337487
6abeh943:31336334
yijiwantestdri0626-t:31336930
ji9b5146:31342393

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions