寫乙個去除字串左邊空格,右邊空格,字串中如果出現多個空格,則合併成乙個空格的程式。
用python和c來解這道題的思路是不一樣的,c的思路基本就是指標的移動,而python有很多現成的東西可以用。
def simplify(text, space=" \t\r\n\f", delete=""):
result =
word = ""
forchar
intext:
ifchar
indelete:
continue
elif char
inspace:
ifword: # 如果word為none,則說明是字串開始,此時遇到
# 的空格直接忽略
# 間的空格,此時乙個單詞已經結
# 束,將其放入結果列表中
word = ""
# 重置這個臨時儲存的單詞
else:
word += char
ifword:
return
" ".join(result) # 在最後為單詞間新增空格
更為pythonic的寫法:
def simplified(text, delete=""):
result =
word =
forchar
intext:
ifchar
indelete:
continue
elif char.isspace():
ifword:
word =
else:
ifword:
return
" ".join(result)
主要的改變有臨時變數word改為列表,判斷是否為空字元或製表符等採用了isspace方法。
**均來自於《rapid gui programming with pyqt》.
字串中刪除空格
cstring strlogpathname m strprjpathname char dirver max drive path max path filename max fname ext max ext splitpath strlogpathname.getbuffer 1024 dir...
刪除字串空格 演算法
不說什麼上 慢慢理解,這樣可以提高度 的能力 我們應該向這個問題,如果字串的第乙個是空格呢。字串不只乙個空格。當判斷第乙個空格以後,怎麼刪除空格,刪除空格以後怎麼把空格後面的字元向前移動 如果上面的4個問題能夠解決的話,寫出這個函式模組就會很簡單了。簡單的解釋一下,我重點說一下字元移動的問題,我們想...
字串空格替換或刪除
1.將乙個字串裡面的空格替換成 20,不考慮字元陣列大小溢位,不得使用庫函式 2.將乙個字串裡面的乙個或多個空格替換成乙個空格 這兩道題都是關於字串替換,不同的是第一道題是將乙個空格替換為3個字元 20,當然這裡任意3個字元都可以,而且只要保證陣列大小足夠大,乙個空格替換成多個也無所謂,本質上是將乙...