如何在 HaxeDevelop / FlashDevelop 查找和替换中使用正则表达式重新排列代码

How to rearrange code using Regular Expressions in HaxeDevelop / FlashDevelop Find and Replace

我正在尝试将 cast(("Sparkles"), GetBitmapData); 转换为 GetBitmapData("Sparkles");

我有这个作为我的查找代码:

cast\(\(\"\.*\"\),\ .*\);

但是这个替换不起作用:

\(\"\"\);

我需要做什么才能完成这项工作?

您的正则表达式不包含捕获组,您尝试使用带编号的反向引用来访问它们。此外,您转义了点,\.* 仅匹配 0+ 个点符号。

您可以使用以下正则表达式替换:

查找内容cast\(\("(.*?)"\),\s*(\w+)\);
替换为("");

这是一个 .NET regex demo(FlashDevelop S&R 功能使用 .NET 正则表达式风格)。

图案详情:

  • cast\(\(" - cast((" 子串
  • (.*?) - 第 1 组(用 </code> 表示)捕获尽可能少的任何 0+ 个字符,直到第一个...</li> <li><code>"\), - "), 子串
  • \s* - 0+ 个空格
  • (\w+) - 第 2 组(用 </code> 表示)捕获 1 个以上的字符 (letters/digits/<code>_)
  • \); - ); 子串。