Actionscript 3 替换As3中的多个字符
我面临着更换绳子的困难Actionscript 3 替换As3中的多个字符,actionscript-3,apache-flex,flash-builder,Actionscript 3,Apache Flex,Flash Builder,我面临着更换绳子的困难 var expression:String = '2X3'; var inString:String = expression; inString=inString.replace("÷","/"); inString=inString.replace("X","*"); trace('Result.....',inString); 输出:- 结果……2*3 没关系。 但问题是,当我试图提供输入作为 变量表达式:字符串='2x3x4x5x6' 输出:- 结果…2*3X3
var expression:String = '2X3';
var inString:String = expression;
inString=inString.replace("÷","/");
inString=inString.replace("X","*");
trace('Result.....',inString);
输出:-
结果……2*3
没关系。
但问题是,当我试图提供输入作为
变量表达式:字符串='2x3x4x5x6'
输出:-
结果…2*3X3X4X5X6
但我需要它的形式
结果…2*3*3*4*5*6
除法也一样。
感谢和问候您是否尝试过
inString=inString.replaceAll(“X”,“*”)代码>?注意“All”后缀 您是否尝试过inString=inString.replaceAll(“X”、“*”)代码>?注意“All”后缀 您是否尝试过inString=inString.replaceAll(“X”、“*”)代码>?注意“All”后缀 您是否尝试过inString=inString.replaceAll(“X”、“*”)代码>?注意“All”后缀 我用它来替换所有
var result:String=inString.split("X").join("*");
我用这个代替所有的
var result:String=inString.split("X").join("*");
我用这个代替所有的
var result:String=inString.split("X").join("*");
我用这个代替所有的
var result:String=inString.split("X").join("*");
我知道你已经选择了一个答案,但它缺乏解释和适当的解决方案。出现这种情况的原因是String.replace()
,当模式
是字符串
时,只替换第一个结果。解决方案是使用RegEx
:
var expression:String = '2x3X3x4X5X6';
var result:String = expression.replace(/x/ig, "*");
trace(result); // output 2*3*3*4*5*6
该模式使用两个标志,全局和大小写不敏感。这将获取字母X的所有实例(不考虑大小写),并搜索整个字符串。RegEx
的好处是它的级别非常低。使用正则表达式时几乎没有开销,这意味着它们的速度非常快String.split
和String.join
使用循环来运行,我相信这要慢得多。此外,还必须在内存中存储额外的数组
诚然,这些在大多数情况下都可以忽略不计(也许10微秒的差异),但并非所有情况都可以忽略不计。我有一个项目需要对所需的文件进行加密。不幸的是,文件太大(最小200MB),执行replace().join()
方法比RegEx
方法慢4-5步。使用RegEx
,我成功地将延迟时间从几秒钟缩短到了2-3帧。我知道您已经选择了一个答案,但它缺少解释和适当的解决方案。出现这种情况的原因是String.replace()
,当模式
是字符串
时,只替换第一个结果。解决方案是使用RegEx
:
var expression:String = '2x3X3x4X5X6';
var result:String = expression.replace(/x/ig, "*");
trace(result); // output 2*3*3*4*5*6
该模式使用两个标志,全局和大小写不敏感。这将获取字母X的所有实例(不考虑大小写),并搜索整个字符串。RegEx
的好处是它的级别非常低。使用正则表达式时几乎没有开销,这意味着它们的速度非常快String.split
和String.join
使用循环来运行,我相信这要慢得多。此外,还必须在内存中存储额外的数组
诚然,这些在大多数情况下都可以忽略不计(也许10微秒的差异),但并非所有情况都可以忽略不计。我有一个项目需要对所需的文件进行加密。不幸的是,文件太大(最小200MB),执行replace().join()
方法比RegEx
方法慢4-5步。使用RegEx
,我成功地将延迟时间从几秒钟缩短到了2-3帧。我知道您已经选择了一个答案,但它缺少解释和适当的解决方案。出现这种情况的原因是String.replace()
,当模式
是字符串
时,只替换第一个结果。解决方案是使用RegEx
:
var expression:String = '2x3X3x4X5X6';
var result:String = expression.replace(/x/ig, "*");
trace(result); // output 2*3*3*4*5*6
该模式使用两个标志,全局和大小写不敏感。这将获取字母X的所有实例(不考虑大小写),并搜索整个字符串。RegEx
的好处是它的级别非常低。使用正则表达式时几乎没有开销,这意味着它们的速度非常快String.split
和String.join
使用循环来运行,我相信这要慢得多。此外,还必须在内存中存储额外的数组
诚然,这些在大多数情况下都可以忽略不计(也许10微秒的差异),但并非所有情况都可以忽略不计。我有一个项目需要对所需的文件进行加密。不幸的是,文件太大(最小200MB),执行replace().join()
方法比RegEx
方法慢4-5步。使用RegEx
,我成功地将延迟时间从几秒钟缩短到了2-3帧。我知道您已经选择了一个答案,但它缺少解释和适当的解决方案。出现这种情况的原因是String.replace()
,当模式
是字符串
时,只替换第一个结果。解决方案是使用RegEx
:
var expression:String = '2x3X3x4X5X6';
var result:String = expression.replace(/x/ig, "*");
trace(result); // output 2*3*3*4*5*6
该模式使用两个标志,全局和大小写不敏感。这将获取字母X的所有实例(不考虑大小写),并搜索整个字符串。RegEx
的好处是它的级别非常低。使用正则表达式时几乎没有开销,这意味着它们的速度非常快String.split
和String.join
使用循环来运行,我相信这要慢得多。此外,还必须在内存中存储额外的数组
诚然,这些在大多数情况下都可以忽略不计(也许10微秒的差异),但并非所有情况都可以忽略不计。我有一个项目需要对所需的文件进行加密。不幸的是,文件太大(最小200MB),执行replace().join()
方法比RegEx
方法慢4-5步。使用RegEx
,我成功地将延迟时间从几秒钟减到了2-3帧。是的,我尝试了这个方法,但没有替代方法()