Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String ActionScript 3.replace()仅替换第一个实例_String_Actionscript 3 - Fatal编程技术网

String ActionScript 3.replace()仅替换第一个实例

String ActionScript 3.replace()仅替换第一个实例,string,actionscript-3,String,Actionscript 3,在FlashActionScript3中,我尝试做一些我认为很简单的事情:用另一个短语替换文本字符串中的所有短语实例。但是,由于某些原因,仅替换第一个实例,而忽略其余实例。我通过字符串替换函数运行了大约9次,将一个解决方案拼凑在一起,因此最终结果是所有的都被替换了,但我想知道我做错了什么。提前谢谢 我的代码: var importPostAddress = "123 Fake Street<br />Mytown<br />Mycounty<br />Myco

在FlashActionScript3中,我尝试做一些我认为很简单的事情:用另一个短语替换文本字符串中的所有短语实例。但是,由于某些原因,仅替换第一个实例,而忽略其余实例。我通过字符串替换函数运行了大约9次,将一个解决方案拼凑在一起,因此最终结果是所有的

都被替换了,但我想知道我做错了什么。提前谢谢

我的代码:

var importPostAddress = "123 Fake Street<br />Mytown<br />Mycounty<br />Mycountry<br />PO5 7CD<br /><br />";
var postAddress = importPostAddress.replace("<br />",", ");
实际结果:

123 Fake Street, Mytown<br />Mycounty<br />Mycountry<br />PO5 7CD<br /><br />
123假街,Mytown
Mycounty
Mycounty
PO5 7CD


为了解决这个问题,您需要做更多的工作

var importPostAddress = "123 Fake Street<br />Mytown<br />Mycounty<br />Mycountry<br />PO5 7CD<br /><br />";
var pattern:RegExp = /<br \/>/g;
var postAddress = importPostAddress.replace(pattern,", ");
var importPostAddress=“123 Fake Street
Mytown
Mycounty
Mycountry
PO5 7CD

; 变量模式:RegExp=//g; var postAddress=importPostAddress.replace(模式,“,”);

我正在使用一个
RegExp
来传递/g标志,这使得替换成为全局的(替换找到的表达式的所有实例)。我还必须使用反斜杠来转义

中的
/
,因为它是正则表达式中的一个控制字符。

Sam有一个很好的解决方案,另一个是:

postAddress = importPostAddress.split("<br />").join(",");
postAddress=importPostAddress.split(“
”).join(“,”;
你好,山姆,谢谢你的回复。您是否使用
/
而不是引号来定义字符串??这是否有效地说:
var模式:RegExp=“”g?或
”/g
@CraigMcArthur您使用
/
而不是引号来定义
rexep
。这基本上是说替换模式(在这种情况下,模式没有特殊的正则表达式特征,所以它实际上是一个字符串)

全局替换。对我来说,这是唯一的解决方案,因为这是一个痛苦的。。。用RegExp替换未硬编码到代码中的所有字符串。可能我想要替换
n
,可能
反斜杠
,或者用户想要输入我需要从字符串中删除的随机字符。
postAddress = importPostAddress.split("<br />").join(",");