Regex 如何在Sublime 3中搜索和替换GUID
我有一个文本文件,我想用空格替换所有guid 我想:Regex 如何在Sublime 3中搜索和替换GUID,regex,sublimetext3,Regex,Sublimetext3,我有一个文本文件,我想用空格替换所有guid 我想: 92094, "970d6c9e-c199-40e3-80ea-14daf1141904" 91995, "970d6c9e-c199-40e3-80ea-14daf1141904" 87445, "f17e66ef-b1df-4270-8285-b3c15da366f7" 87298, "f17e66ef-b1df-4270-8285-b3c15da366f7" 96713, "3c28e493-015b-4b48-957f
92094, "970d6c9e-c199-40e3-80ea-14daf1141904"
91995, "970d6c9e-c199-40e3-80ea-14daf1141904"
87445, "f17e66ef-b1df-4270-8285-b3c15da366f7"
87298, "f17e66ef-b1df-4270-8285-b3c15da366f7"
96713, "3c28e493-015b-4b48-957f-fe3e7acc8412"
96759, "3c28e493-015b-4b48-957f-fe3e7acc8412"
94665, "87ac12a3-62ed-4e1d-a1a6-51ae05e01b1a"
94405, "87ac12a3-62ed-4e1d-a1a6-51ae05e01b1a"
成为:
92094,
91995,
87445,
87298,
96713,
96759,
94665,
94405,
如何在Sublime 3中完成此操作?尝试在正则表达式搜索模式中搜索此模式:
"[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}"
然后用空字符串替换。这应该去掉GUID,留下您想要的输出
- Ctrl+H
- 查找:
“[\da-f-]{36}”
- 替换:
留空
- 启用正则表达式模式
- 全部替换
" : double quote
[ : start class character
\d : any digit
a-f : or letter from a to f
- : or a dash
]{36} : end class, 36 characters must be present
" : double quote
92094,
91995,
87445,
87298,
96713,
96759,
94665,
94405,
给定示例的结果:
" : double quote
[ : start class character
\d : any digit
a-f : or letter from a to f
- : or a dash
]{36} : end class, 36 characters must be present
" : double quote
92094,
91995,
87445,
87298,
96713,
96759,
94665,
94405,
另一个正则表达式解决方案涉及稍微不同的搜索替换策略,我们不关心GUI格式,只需获得第一列:
- 搜索
(同样不要忘记激活regex模式。*)([^,]*,).
- 替换为
$1
- “一些非逗号字符”:
[^,]*
- 后跟逗号:
[^,]*,
*
(GUI格式不重要):[^,]*,.*
最后,我们需要使用以下命令捕获第一列:([^,]*,).*
在替换字段中,我们使用一个
$x
,它表示第x个捕获组 我只是找不到“[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}”\n我已经标记了。*按钮以在搜索中启用正则表达式。我做错了什么吗?它正在演示中工作。如果由于数据或Sublime中的某些特性,行没有以\n
结尾,请尝试从模式中删除\n
。