Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex vscode中基于正则表达式的搜索和替换_Regex_Visual Studio Code - Fatal编程技术网

Regex vscode中基于正则表达式的搜索和替换

Regex vscode中基于正则表达式的搜索和替换,regex,visual-studio-code,Regex,Visual Studio Code,在VSCode中:我想对以下内容进行通配符替换: rgb(1, 1, 1 ,1) 与: 基本上,当指定alpha值时,数据类型应该从“rgb”更改为“rgba”。 如果未指定alpha,例如rgb(1,1,1)-它们应保持不变 我试过: 查找:rgb(.*,.*,.*,.*) 替换:rgba($1) 这显然不起作用。要实现这一点,正确的正则表达式语法是什么?多谢各位 更新:请注意,某些位置的逗号前/后有空格。不一致。要与数字周围任意数量的空格匹配: Search: rgb(?=\((\s*\d

在VSCode中:我想对以下内容进行通配符替换:

rgb(1, 1, 1 ,1)
与:

基本上,当指定alpha值时,数据类型应该从“rgb”更改为“rgba”。 如果未指定alpha,例如rgb(1,1,1)-它们应保持不变

我试过:

查找:
rgb(.*,.*,.*,.*)
替换:
rgba($1)

这显然不起作用。要实现这一点,正确的正则表达式语法是什么?多谢各位


更新:请注意,某些位置的逗号前/后有空格。不一致。

要与数字周围任意数量的空格匹配:

Search: rgb(?=\((\s*\d+\s*,){3}\s*\d+\s*\))
Replace: rgba 

这将匹配任意数量的空白,并在替换后修复它们。

有效的RGB值是
0-9
a-f
或什么?有效的RGBA值是0到255。谢谢
rgb\(\d+,\d+,d+,\d+)
在这种情况下会这样做。(这比
0-255
稍微宽松一点,但如果可行,您可以将
\d
更改为一个范围(例如)宽松就可以了。但这对我不起作用。VSCode搜索无法识别任何具有该模式的文本(我知道它应该具有该模式)。谢谢。使用“查找”框中的
*
按钮激活正则表达式搜索
Search: rgb(?=\((\s*\d+\s*,){3}\s*\d+\s*\))
Replace: rgba 
Search: rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)
Replace: rgba($1, $2, $3, $4)