以“=”开头的正则表达式模式和异常
regex pattern starting with "=" and exceptions
我正在尝试编写一个表达式,它将与 json 文件一起用于 vscode 扩展。我的表达式应该以 "=\s*"
开头,然后我希望它是 select 等于之后的所有内容,但以下情况除外:
TRUE
或FALSE
等于 后
- 以数字开头
- 以 ' 或 " 开头
我已经尝试了很多东西,并且在每种情况下我都设法使它起作用,但是当我尝试将它们组合在一起时,它不起作用
文档字符串示例:
abc = test
abc = TRUE
abc = FALSE
abc = "test"
abc = 'test'
abc = 123
在这些例子中,我的正则表达式应该只保留第一个,“测试”可以是任何东西。
最接近解的是这个/(=\s*)^(((?!TRUE|FALSE|[0-9]|\"|\').)*)$/gm
你可以使用
查找内容:^(.*?=)(?!\s*(?:TRUE|FALSE|[0-9"'])).*
替换为:</code></p>
<p><em>详情</em>:</p>
<ul>
<li><code>^
- 行首
(.*?=)
- 第 1 组:除换行符以外的任何零个或多个字符,尽可能少,然后是 =
字符
(?!\s*(?:TRUE|FALSE|[0-9"']))
- 如果在当前位置的右侧紧邻有
\s*
- 零个或多个空格
(?:TRUE|FALSE|[0-9"'])
- TRUE
, FALSE
, 数字或 "
或 '
.*
- 该行的其余部分。
查看 regex demo 和演示屏幕截图:
我正在尝试编写一个表达式,它将与 json 文件一起用于 vscode 扩展。我的表达式应该以 "=\s*"
开头,然后我希望它是 select 等于之后的所有内容,但以下情况除外:
TRUE
或FALSE
等于 后
- 以数字开头
- 以 ' 或 " 开头
我已经尝试了很多东西,并且在每种情况下我都设法使它起作用,但是当我尝试将它们组合在一起时,它不起作用
文档字符串示例:
abc = test
abc = TRUE
abc = FALSE
abc = "test"
abc = 'test'
abc = 123
在这些例子中,我的正则表达式应该只保留第一个,“测试”可以是任何东西。
最接近解的是这个/(=\s*)^(((?!TRUE|FALSE|[0-9]|\"|\').)*)$/gm
你可以使用
查找内容:^(.*?=)(?!\s*(?:TRUE|FALSE|[0-9"'])).*
替换为:</code></p>
<p><em>详情</em>:</p>
<ul>
<li><code>^
- 行首
(.*?=)
- 第 1 组:除换行符以外的任何零个或多个字符,尽可能少,然后是 =
字符(?!\s*(?:TRUE|FALSE|[0-9"']))
- 如果在当前位置的右侧紧邻有
\s*
- 零个或多个空格(?:TRUE|FALSE|[0-9"'])
-TRUE
,FALSE
, 数字或"
或'
.*
- 该行的其余部分。查看 regex demo 和演示屏幕截图: