vscode里使用正则表达式

正则真的好用,平时工作用正则最多的地方就是在编辑器里做查找替换,之前系统学习了一段时间的正则但有些技巧长时间不用有些生疏了,现在重新捡起来顺便记录一下。

基本的替换操作

ctrl+h可以唤出替换界面,选定.*可以开启正则匹配模式,在上面那行输入正则表达式,下面那行输入替换字符串
在这里插入图片描述

括号匹配示例

示例将字符串顺序交换
字符串:example = test
正则表达式: (\w+)\s*=\s*(\w+)
替换表达式:$2 = $1
说明:用括号包含的子表达式会按照顺序被匹配为$n

非捕获型括号

如果只是想用括号分组但不用括号匹配可以用 (?:)来包含,示例如下:
字符串:test_aasdfasdfasdfaseifansefi
正则表达式:(?:test_(\w+))
这样$1会匹配的是 “test_” 后面的一串,而不会匹配整个字符串

环视

类型正则表达式匹配成功的条件
肯定逆序环视(?<=…)子表达式能够匹配左侧文本
否定逆序环视(?<!..)子表达式不能匹配左侧文本
肯定顺序环视(?=…)子表达式能够匹配右侧文本
否定顺序环视(?!..)子表达式不能匹配右侧文本

示例:
字符串:test_aaa
正则表达式: (?=test_(\w+))
替换表达式:$1
结果:aaatest_test
说明:环视匹配的是位置而不是字符串,环视不会占用字符,上面示例匹配到了字符串左侧的位置,而$1匹配到的是"aaa"

示例:
[17011] = [[{17011, “测试测试”, 14000
[17011] = [[{17011, “测试测试”, 17011

\[(\d+)\] = \[\[\{\1, "[^,]+", (?!\1) 匹配第一个
\[(\d+)\] = \[\[\{\1, "[^,]+", \1  匹配第二个

if then else条件判断

表达式:((if)then|else)
字符串:
num:1141244
world:example
正则表达式:(?<=num:)(\d+)|(example)
这里其实用的就是环视判断出位置,来模拟if条件。

  • 0
    点赞
  • 2
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

qq_17370937

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值