4 6如何去掉字串中不需要的字元

2021-07-29 10:36:25 字數 1484 閱讀 6337

# -*- coding:utf-8 -*-

"""實際案例:

1. 過濾掉使用者輸入中前後多餘的空白字元:

' [email protected]'

2. 過濾某windows下編輯文字中的'\r':

'hello world\r\n'

3.去掉文字中的unicode組合符號(音調):

u'...'

解決方案:

方法一:字串strip(),lstrip(),rstrip()方法去掉字串兩端字元.

方法二:刪除單個固定位置的字元,可以使用切片+拼接的方式.

方法三:字串的replace()方法或正規表示式re.sub()刪除任意位置字元.

方法四:字串translate()方法,可以同時刪除多種不同字元.

"""import re

# -----------1-------------

s = ' abc 123'

print s.strip()

# 'abc 123'

print s.lstrip()

# 'abc 123 '

print s.rstrip()

# ' abc 123'

s = '----abc++++'

print s.strip('+-') # 去掉前後的- + 號

# -----------2-------------

test = 'abc:123'

te = test[:3] + test[4:]

print te

# -----------3-------------

s = '\tabc\t123\txyz'

s.replace('\t', '')

print s

s1 = '\tabc\t123\txyz\ropq\r'

s1 = re.sub('[\t\r]', '', s1)

print s1

# -----------4-------------

import string

s = 'acb12345xzy'

print s

print s.translate(string.maketrans('abcxyz', 'xyzabc')) # string.maketrans()呼叫這個方法,完成對映表

s = 'abc\refg\n\2342\t'

print s.translate(none, '\t\r\n') # 去掉'\t\r\n',刪除操作就只要賦值none就行了

u = u'nǐ shì hǎo de'

print u.translate() # 將其中乙個聲調刪除掉

print u.translate(dict.fromkeys([0x0301, 0x030c, 0x0304, 0x0300]))

# 去掉四個聲調

如何去掉字串中不需要的字元

實際案例 過濾掉使用者輸入中前後多餘的空白字元 hello 過濾某windows系統下某編輯檔案應用在編輯文字時插入的 r 解決方案 方法一 字串strip lstrip 和rstrip 方法去掉字串兩端,左邊和右邊的字元 方法二 刪除單個固定位置的字元,可以使用切片 拼接的方式 方法三 字串的re...

去掉字串不需要的HTML標記(正規表示式)

具體實現如下 除掉html保留格式外的其他格式 string holdtags 保留的關鍵字 string regstr string.format s?string.join b s?holdtags system.text.regularexpressions.regex reg new sys...

關於delete字串 需不需要加

今天在寫c 練習題時產生乙個疑惑 new出字元陣列後 需不需要在delete時加 按道理 只要是陣列應該都要加的,但是答案沒有加,於是晚上回來上機執行 環境 devc include include using namespace std 有一些些成員是之前用到的 不過不影響測試 class cba...