我需要使用正則運算式從我的資料集中的字串中過濾出特定的字符。我如何才能過濾掉數字和數字之間的"-"符號,并跳過字母字符之間的"-"符號,因為我現在使用的正則運算式除了過濾掉數字字符之間的"-"符號外,還過濾掉了任何字母數字字符之間的每一個"-"。
例子:
問題:"非營利性組織管理,100-200名員工" 目前的結果。"非營利組織管理,雇員" 希望得到的結果。"非營利組織管理,雇員"
問題:"非營利組織管理,雇員" 目前的結果:"非營利組織管理,雇員" 希望的結果:"非營利組織管理,雇員"
if 'business' in row.keys() 。
row['business'] = re. sub("[0-9-][0-9]*", '', str(row['business'))
uj5u.com熱心網友回復:
在python中:
string = "非營利性組織管理,100-200名員工"。
re.sub("(d )-(d )", ""/span>, string)
輸出:
'非營利性組織管理,雇員'。
uj5u.com熱心網友回復:
你需要使用運算式d -d ,以便用空字串替換所有--包括數字(d)。
print(re. sub("d -d *", "", "非營利組織管理,100-200人")
結果是 "非營利組織管理,雇員"
。注意我在模式中加入了 *,以便把數字后面的空格也洗掉。
建議。 如果你多次執行這個操作,我建議你這樣做:
建議:
import re
pattern = re.compile("d -d *"/span>)
print(pattern.sub("", "非營利性組織管理,100-200名員工")
所以Python不需要每次都編譯模式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331561.html
標籤:
