2016-02-02 26 views

回答

0

通常你會用正則表達式來做,但AS2不支持它們。因此,另一個(老式)的解決方案將被分割在這些字符的字符串,然後再返回

這是假設你只有一個「)」,並在你的字符串一個「P」加入吧:

var myString:String = "AA55BBB(888)1234567890P1"; 

// this will result in an Array like ["AA55BBB(888", "1234567890P1"]; 
var firstSplit:Array = myString.split(")"); 

var firstPart:String = firstSplit[0]; // "AA55BBB(888" 
var secondPart:String = firstSplit[1]; // "1234567890P1" 

var secondSplit:Array = secondPart.split("P"); // ["1234567890","1"] 

secondPart = secondSplit[1]; //"1" 

// since we have removed the ")" and "P" on split, put them back in 
var newString:String = firstPart + ")P" + secondPart; 

trace(newString); // "AA55BBB(888)P1" 
+0

O soo Coool :)但現在它誕生了新的問題。我的代碼的第一部分是E123XABCD。這總是相同的字符數如何將它們分開成爲變量 E 123 X AB CD –

+0

如果你的數字和字母總是在同一個地方,那麼在這裏使用substr可能會更容易 - 它會給你一個零件的字符串(從startindex開始的X個字符)。例如,var part:String = firstPart.substr(1,3)將返回部分「123」,firstPart.substr(5,2)將返回「AB」。請注意,startIndex以0開頭(字符串的第一個字符位於0) – Philarmon

+0

它的功能非常好!我用我的語言寫。 「chodzizajebiściew ch * j」;) –