Python編程快速上手——strip()函數的正則表達式實現方法分析
本文實例講述了Python strip()函數的正則表達式實現方法。分享給大家供大家參考,具體如下:
題目如下: 寫一個函數,它接受一個字符串,做的事情和strip()字符串方法一樣。如果只傳入要去除的字符串(原字符串),沒有其他參數,那么就從該字符串首尾去除空白字符串。否則,函數第二個參數指定的字符串將從該字符串中去除思路如下: 補充:字符串的str.strip()方法,去除字符串首尾指定的字符,只能去除頭尾兩邊,不能去除中間 程序需要做以下的事情: 接受一個字符串和要去除的字符 調用函數去除字符串指定頭尾字符 返回去除后的字符串 代碼需要做以下的事情: def定義一個函數,接受兩個參數 創建正則表達式對象 返回Regex.sub()替換后的字符串 input()輸入字符串 print()打印輸出函數返回對象 重點分析: 根據strip()方法特性,去除頭尾特定字符需要用到“ ^ ”和“ $ ”符號。 由于不能事先知道去除哪些字符,因此在正則表達式中需要用到format格式字符串。 需要用 | “管道'符號在^{0}和{0}$之間插入,匹配多個分組。 sub()方法返回替換后的字符串,因此sub()方法的第一個參數為”'空。 *默認去除字符串首尾空白字符,我的方法是在input()輸入參數二時,若input() == “”,則重新賦值參數二為' '空格-星號,星號匹配0次或多次分組,能夠匹配到所有空格。代碼如下:import redef fakeStrip(longStr,str ): stripRex = re.compile(r’^{0}|{0}$’.format(str)) return stripRex.sub(’’,longStr)inputStr1 = input('請輸入原字符串:')inputStr2 = input('請輸入要去除的字符:')if inputStr2 == ’’: #若第二參數是否為空,更改為’ *’,方便正則表達式進行模式匹配 inputStr2 = ’ *’print('去除后的字符串為:',fakeStrip(inputStr1,inputStr2))輸出結果如下: 去除字符串 去除空格
PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:
JavaScript正則表達式在線測試工具:http://tools.jb51.net/regex/javascript
正則表達式在線生成工具:http://tools.jb51.net/regex/create_reg
更多關于Python相關內容可查看本站專題:《Python正則表達式用法總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
相關文章:
