2016-06-26 26 views
0

我在嘗試刪除字符串的第一個空格時遇到問題,如果該字符串中有2個空格。例如,應該將「全功能方法」變成「全功能方法」,但「功能方法」不應該改變,因爲它只有1個空格。如果字符串包含2個空格,我無法真正想到刪除第一個空格的方法。如果字符串恰好包含2個空格,請刪除第一個空格

+7

哪種語言? – v7d8dpo4

回答

1

我不確切地知道你想要做什麼,但是你可以搜索到RegExp和String。 replace()替換字符串中的一些東西。 這是瞭解Characters, metacharacters, and metasequences的另一個鏈接。

var myPattern1:RegExp =//g; 
var str1:String = "This is a string that contains double spaces."; 
trace(str1.replace(myPattern1, " ")); 
//this replaces all " " by " "... 
//outputs : This is a string that contains double spaces. 

或者你的情況(我想)是這樣的

var myPattern2:RegExp =//; 
var str2:String = "Fully Functional Method"; 
trace(str2.replace(myPattern2, "")); 
//If you omit the g, only the first space will be replaced by "" 
//outputs : FullyFunctional Method 

有這麼多東西,你可以通過使用正則表達式做,我不會在這裏解釋這個... 只檢查在Adobe網站上... 這是一種快速高效的方式來處理字符串。 我希望這會有所幫助。 既然你檢查這些鏈接,你會明白我的例子是純粗糙的,應該修改爲具有完全功能方法。 :D

+0

AMO,RegExp這是處理字符串的最佳方法,它避免了可能導致代碼中「減速」的冗長和不必要的循環。 特別是如果你在大字符串上工作。 RegExp類一眼就有點令人驚訝,但是當你熟悉語法時,這是處理字符串的最好和更有效的方法。 我不會投其他人的答案,但我認爲你應該避免不必要的循環...:\ 保持簡單:D – tatactic

+0

@丹尼爾霍勒你沒有告訴它是無用的,也沒有用... 您是否嘗試檢查正則表達式文檔? – tatactic

+0

@Daniel Holler感謝您的反饋! – tatactic

0

對字符串進行線性掃描。計算空格的數量並記錄第一個空格的索引(如果有的話)。如果有兩個空格,則返回一個字符串,該字符串是直到但不包括第一個空格的字符串,以及第一個空格後的字符串。

保持簡單。使用正則表達式可以解決你的問題,但請記住,在未排序的集合中查找特定字符的最壞時間複雜度總是爲O(N),所以它不會更快。

相關問題