如何在 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>_
)
\);
- );
子串。
我正在尝试将 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>_
)\);
-);
子串。