如何使用搜索/替换在Vim中访问正则表达式匹配项?

我喜欢炸玉米饼

样本:

function foobar($arg1 = null, $arg2 = null) {
    $_a = $arg1;
    $_b = $arg2;
}

我想写一个搜索并替换vim中的正则表达式来做到这一点:

function foobar($arg1 = null, $arg2 = null) {
   $_a = (!$arg1) ? $arg1 : 1;
   $_b = (!$arg2) ? $arg2 : 1;
 }

到目前为止,这是我尝试过的:

  1. 使用.命令来重复我在vim中的最后一个动作,但它只会追加: 1;到行中
  2. 我已经编写了许多此正则表达式的变体,但无法使其按预期工作: %s/\$_a\t=\t*/(!\$arg1)\t\?\t\2\t\:\t1/g
  3. 手动替换这些行,但是不用说我必须对大量文件进行此操作。

基本上我想做的是编写一个匹配的正则表达式,$arg1然后用三进制运算符将其括起来,但是我无法在vim中访问该正则表达式匹配项。

任何帮助将不胜感激!

(它不必在vim中完成,我愿意接受使用perl之类的建议)

谢谢!!

虚假的

尝试以下命令:

:%s/\(\$arg[0-9]\);/(!\1) ? \1 : 1;

上面的命令替换$arg1;(!$arg1) ? $arg1 : 1;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在正则表达式匹配项中替换字符串

来自分类Dev

如何捕获全局正则表达式替换中的每个匹配项?

来自分类Dev

Objective-C中的正则表达式:如何用动态模板替换匹配项?

来自分类Dev

使用包含记事本++中先前匹配项的正则表达式替换

来自分类Dev

使用正则表达式替换字符串中的匹配项

来自分类Dev

如何使用vim替换与正则表达式匹配的所有整行

来自分类Dev

如何使用vim替换与正则表达式匹配的所有整行

来自分类Dev

正则表达式,如何排除匹配中的搜索

来自分类Dev

正则表达式将匹配项中的所有匹配项替换x次

来自分类Dev

正则表达式子方法不会替换python正则表达式中的所有匹配项

来自分类Dev

正则表达式仅搜索和替换匹配项

来自分类Dev

Python正则表达式-搜索和替换匹配项

来自分类Dev

在查找和替换模块中声明的正则表达式将无法正确访问匹配项

来自分类Dev

Vim搜索替换正则表达式+增量功能

来自分类Dev

Vim搜索和替换-正则表达式

来自分类Dev

Vim搜索替换正则表达式+增量功能

来自分类Dev

表达式中涉及数学除法时,如何使用vim正则表达式替换文本

来自分类Dev

TextWrangler中的正则表达式/ grep替换,用指定的文本替换后续的匹配项

来自分类Dev

在查找/替换中使用正则表达式替换多个匹配项

来自分类Dev

如何使用GPRename的正则表达式功能将匹配组重新插入“替换”中?

来自分类Dev

如何使用GPRename的正则表达式功能将匹配组重新插入“替换”中?

来自分类Dev

无论方向如何,如何跳到Vim中最接近的正则表达式匹配项

来自分类Dev

如何正则表达式匹配和正则表达式替换php中的字符串

来自分类Dev

在Groovy中使用正则表达式替换字符串中的所有匹配项

来自分类Dev

如何从正则表达式搜索中提取跨度和匹配项?

来自分类Dev

搜索文件中多行正则表达式的匹配项(无pcregrep)

来自分类Dev

仅在正则表达式匹配项中替换字符

来自分类Dev

JS中的正则表达式-添加匹配项以替换

来自分类Dev

Perl正则表达式从替换中返回匹配项

Related 相关文章

  1. 1

    如何在正则表达式匹配项中替换字符串

  2. 2

    如何捕获全局正则表达式替换中的每个匹配项?

  3. 3

    Objective-C中的正则表达式:如何用动态模板替换匹配项?

  4. 4

    使用包含记事本++中先前匹配项的正则表达式替换

  5. 5

    使用正则表达式替换字符串中的匹配项

  6. 6

    如何使用vim替换与正则表达式匹配的所有整行

  7. 7

    如何使用vim替换与正则表达式匹配的所有整行

  8. 8

    正则表达式,如何排除匹配中的搜索

  9. 9

    正则表达式将匹配项中的所有匹配项替换x次

  10. 10

    正则表达式子方法不会替换python正则表达式中的所有匹配项

  11. 11

    正则表达式仅搜索和替换匹配项

  12. 12

    Python正则表达式-搜索和替换匹配项

  13. 13

    在查找和替换模块中声明的正则表达式将无法正确访问匹配项

  14. 14

    Vim搜索替换正则表达式+增量功能

  15. 15

    Vim搜索和替换-正则表达式

  16. 16

    Vim搜索替换正则表达式+增量功能

  17. 17

    表达式中涉及数学除法时,如何使用vim正则表达式替换文本

  18. 18

    TextWrangler中的正则表达式/ grep替换,用指定的文本替换后续的匹配项

  19. 19

    在查找/替换中使用正则表达式替换多个匹配项

  20. 20

    如何使用GPRename的正则表达式功能将匹配组重新插入“替换”中?

  21. 21

    如何使用GPRename的正则表达式功能将匹配组重新插入“替换”中?

  22. 22

    无论方向如何,如何跳到Vim中最接近的正则表达式匹配项

  23. 23

    如何正则表达式匹配和正则表达式替换php中的字符串

  24. 24

    在Groovy中使用正则表达式替换字符串中的所有匹配项

  25. 25

    如何从正则表达式搜索中提取跨度和匹配项?

  26. 26

    搜索文件中多行正则表达式的匹配项(无pcregrep)

  27. 27

    仅在正则表达式匹配项中替换字符

  28. 28

    JS中的正则表达式-添加匹配项以替换

  29. 29

    Perl正则表达式从替换中返回匹配项

热门标签

归档