当前位置: 首页 > 知识库问答 >
问题:

删除文本编辑器中的函数,保留参数[重复]

孔睿
2023-03-14

我正在更新一个项目的旧代码,它有成千上万的旧phpmysql_real_escape_string()调用。

问题是我无法执行搜索替换,因为我需要将参数保留在()中,然后从调用中删除结束符)。在sublime或vscode这样的编辑器中可以这样做吗?

共有2个答案

郝昊东
2023-03-14

您可以在Sublime Text 3搜索和替换中使用捕获组。因此,您可以捕获参数并使用back引用在替换的文本中引用它。

在regexp中捕获组使用特殊的括号字符“捕获”匹配项,并使它们在“反向引用”$1$2等中可用,这些变量类似于包含匹配组的变量。

  1. 假设我们有一个字符串:

SOMETHING_UNWANTEDMY_FIRST_CAPTURED_WORDSOMETHING_UNWANTEDMY_SECOND_CAPTURED_WORDSOMETHING_redired

SOMETHING_UNWANTEDMY_FIRST_CAPTURED_WORDSOMETHING_UNWANTEDMY_SECOND_CAPTURED_WORDSOMETHING_UNWANTED

$1$2

MY_FIRST_CAPTURED_WORDMY_SECOND_CAPTURED_WORD

宋典
2023-03-14

针对你的具体问题(我使用的是升华文本3)

样本字符串:

mysql_real_escape_string(parameter) 

Find pattern(注意我们需要转义函数的括号):

mysql_real_escape_string\((.*?)\)

替换:

new_fun(\1)

这将导致:

new_fun(parameter) 

我们匹配旧函数,并捕获组1中的参数。然后替换为新函数,并使用\1

实例:https://regex101.com/r/OqOGGX/1

 类似资料:
  • 到目前为止,我们介绍了一些用于在文件中移动和选择区域的方法,现在让我们真正来修改一些文本吧。很显然你可以通过打字的方式来输入字符,但是有另一些方法使删除和处理字符变得更简捷易用。 基本操作 有一些用于基本操作的很酷的快捷键,他们十分易用。这些操作包括整行移动文本,整行复制,以及改变大小写。 ctrl-T 交换光标两边字符的位置 cmd-J 将下一行拼接到当前行的末尾 ctrl-cmd-up, ct

  • 我使用Pandas read_csv从csv文件导入了一个数据帧。它的形状是735,36。我需要删除最后33列-保留前3列。这些列是,, 我已经尝试了这里所有的建议 无论我做什么,我都会得到以下错误: 例如: 我又开始了。“bool对象不可下标”错误已经消失,我认为df已经被覆盖。 我试图使用一些公开的医院活动数据,并从中提取数据。我是一名神经外科医生,所以你可能需要耐心。数据在这里https:/

  • 考虑以下bash脚本: 第一个参数中的尾随空格发生了什么变化?如何保存它?

  • 可能重复: PostgreSQL是否支持“重音不敏感”排序规则? 我试图删除重音,所以当我选择时,它会忽略它们。 例子: 它返回: 或者类似的东西。 我发现这些函数无法工作,我想这可能是因为我使用的是Struts 1。十、 请检查它们,告诉我哪里错了,或者我应该使用什么其他功能。 第一个函数 第二个功能 在NetBeans中运行文件时,这两个函数都会生成以下错误:

  • 如何继续删除char从编辑文本后settext编辑文本当按钮删除keybord是坚持真? 谢啦

  • 我正在尝试使用 Jsoup 删除 HTML 页面标记之间的所有文本 例如,如果输入HTML是 输出应该是 基本上,我想删除返回的内容。 我找到了很多相反的帖子,只保留文本,但没有解决我的问题。知道怎么做吗? 编辑 maverick9999:https://stackoverflow.com/a/24292349/3589481提出的解决方案将解决大部分情况。 然而,正如评论中提到的,这个解决方案也