gpt4 book ai didi

regex - Haxe 中的模式替换

转载 作者:行者123 更新时间:2023-12-02 08:11:35 25 4
gpt4 key购买 nike

var str2 : String = "Expander Detected (%MSG_ID%)";
var r2 = ~/[\(%MSG_ID%\)]+/g;
trace(r2.replace(str2, ""));

预期结果:检测到扩展器

实际结果:Expander etected

我需要替换字符串中的 (%MSG_ID%)(%MSG_ID%)之前的字符是动态的,所以我们不能手动替换它们。

最佳答案

您需要删除周围的[]。这按预期工作:

var r2 = ~/\(%MSG_ID%\)+/g;

[] 是一个字符集,如果集合中包含的单个 字符匹配则匹配。由于该集合恰好包含 D,因此在调用 replace() 时也会删除 D。但是,您只想匹配所有字符(并按此顺序)。

我会推荐像 regex101.com 这样的工具用于测试正则表达式。你可以很好地看到那里的问题:

关于regex - Haxe 中的模式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46389376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com