如何在 Notepad++ 中排除双引号内的搜索模式
How can I exclude search pattern within double quotes in Notepad++
我有以下行,我想用白色 space(制表符)替换 space,但希望将 space 保持在双引号内。我在 Notepad++.
[11/May/2020:10:10:20 -0400] "GET / HTTP/1.1" 302 523 52197 url.com - - TLSv1.2 19922 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36" https://somelinkhere - -
期望的输出:
[11/May/2020:10:10:20 -0400] "GET / HTTP/1.1" 302 523 52197 url.com - - TLSv1.2 19922 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36" https://somelinkhere - -
通过下面的正则表达式,我能够 select 双引号下的字符串,但它对我没有用。
"([^"]*)"
你能帮我实现这个目标吗?
您可以使用
("[^"]*")|[ ]
替换为(?1:\t)
。
详情:
("[^"]*")
- 捕获第 1 组:一个 "
,然后是 "
以外的零个或多个字符,然后是 "
|
- 或
[ ]
- 匹配 space(您可以在此处删除 [
和 ]
,它们用于使 space 模式在回答)。
查看演示截图:
我有以下行,我想用白色 space(制表符)替换 space,但希望将 space 保持在双引号内。我在 Notepad++.
[11/May/2020:10:10:20 -0400] "GET / HTTP/1.1" 302 523 52197 url.com - - TLSv1.2 19922 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36" https://somelinkhere - -
期望的输出:
[11/May/2020:10:10:20 -0400] "GET / HTTP/1.1" 302 523 52197 url.com - - TLSv1.2 19922 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36" https://somelinkhere - -
通过下面的正则表达式,我能够 select 双引号下的字符串,但它对我没有用。
"([^"]*)"
你能帮我实现这个目标吗?
您可以使用
("[^"]*")|[ ]
替换为(?1:\t)
。
详情:
("[^"]*")
- 捕获第 1 组:一个"
,然后是"
以外的零个或多个字符,然后是"
|
- 或[ ]
- 匹配 space(您可以在此处删除[
和]
,它们用于使 space 模式在回答)。
查看演示截图: