2013-02-06 101 views
1

AS3 | Adove Air 3.5 | Flash CS6AS3刪除字符串中的單詞後的字符

我把html從一個源代碼放到一個字符串中,我一個一個地分開,根據我提取的信息構建一個XML文件。我需要搜索整個字符串以刪除「info」後面的字符,直到字符「&」。整個字符串中有多個這樣的實例,所以我認爲最好使用RegExp。歡迎其他建議。

//code from the website put into a full string 
var fullString = new String(urlLoader.data); 

//search string to find <info> and remove characters AFTER it up until the character '&' 
var stringPlusFive:RegExp = /<info>1A2E589EIM&/g; 

//should only remove '1A2E589EIM' leaving '<info>&' 
fullString = fullString.replace(stringPlusFive,""); 

我遇到的問題是「1A2E589EIM」不一致。它們是隨機的數字和字符,也可能是長度,所以我不能真正使用我上面寫的東西。它總是會導致「&」。

在此先感謝您的幫助。

回答

0

我認爲,正則表達式會更喜歡

//search string to find <info> and remove characters AFTER it up until the character '&' 
var stringPlusFive:RegExp = /<info>\w+&/g; 

//should only remove '1A2E589EIM' leaving '<info>&' 
fullString = fullString.replace(stringPlusFive,"<info>&"); 
現在

,如果你要分析你的字符串,XML,你可以等到你有你的XML結構,只是刪除從「信息的信息串「節點

//code from the website put into a full string 
var fullString = new String(urlLoader.data); 

//parse to XML 
var xml:XML = XML(fullString), 
    index:int, text:string; 

for each(var info:XML in xml.descendants('info')){ 
    text = info.*[0].text(); 
    index = text.indexOf('&'); 
    if(index != -1){ 
    info.*[0] = text.substr(index); 
    } 
} 

我不知道做作到* [0],但它應該是類似的東西。希望這可以幫助。

+0

是的,在我開始執行XML命令之前,問題是進入XML格式。/ \ w + &/g;雖然工作。感謝那! – user1129107