2017-02-09 146 views
-1

我有串這樣如何從字符串中刪除所有符號,數字和空格?

603 - CELLULITIS W/O MCC 

我想使用正則表達式 我以前嘗試

s= re.sub(r"(\b|\s+\-?|^\-?)(\d+\s[-]\s|\d*\.\d+)\b","",s) 

這導致我這個 蜂窩組織炎將其轉換爲

CELLULITISWOMCC 

在Python W/O MCC

+0

你試過了嗎?如果你有問題,也許包括這個問題。 – MYGz

+0

爲任何不是字母的東西製作正則表達式,並用空字符串替換它。你用過正則表達式嗎? – gunr2171

+2

我正在投票結束這個問題,因爲SO不是一個編碼服務。 – TigerhawkT3

回答

2

既然你想刪除非大寫字母字符,否定正則表達式會比正面的正則表達式工作得更好。搜索不是大寫字母的字符並替換爲空字符串。

您可以嘗試像這樣:

import re 

s1 = "603 - CELLULITIS W/O MCC " 
s2 = re.sub(r'[^A-Z]+', r'', s1) 
print s2 

輸出:

CELLULITISWOMCC 

正則表達式:

[^A-Z]+ - 匹配1個或多個字符,這是不是從AZ

演示:https://regex101.com/r/OCNztP/1

相關問題