佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 正則表達(dá)式實現(xiàn)添加、刪除、替換三種功能

正則表達(dá)式實現(xiàn)添加、刪除、替換三種功能

熱門標(biāo)簽:銀行業(yè)務(wù) Mysql連接數(shù)設(shè)置 阿里云 團(tuán)購網(wǎng)站 服務(wù)器配置 電子圍欄 科大訊飛語音識別系統(tǒng) Linux服務(wù)器

最近呢,公司讓寫一個組件,要求用正則表達(dá)式構(gòu)建一個中文的匹配組件,許多問題就來了,大多是用自動機(jī)來構(gòu)建一個正則表達(dá)式的引擎,小編雖然大學(xué)的時候?qū)W過編譯原理,可奈何現(xiàn)在已經(jīng)忘得差不多了,只能通過現(xiàn)有的正則表達(dá)式來進(jìn)行功能實現(xiàn)。

下面的代碼呢實現(xiàn)了通過用正則表達(dá)式來對某一個句子的添加、替換、刪除三種操作,不知道這個適不適合大家的口味,反正小編已經(jīng)做好讓公司頭批評的準(zhǔn)備了,因此小編是在是現(xiàn)學(xué)不來呀。

# -*- conding:utf-8 -*-
import re
txt = '這個池子的體積大約是34立方米容積'
'''role為匹配規(guī)則,re_out為替換部分格式為“\1(替換部分)”'''
def Replace(role,re_out):
 out = re.compile(role)
 String_out = out.sub(re_out,txt)
 print(String_out)
Replace(r'(這個池子的體積大約是34)(.*)',r'\1平方米')
'''
role為匹配規(guī)則,num為將要刪除的元素(從1開始)
'''
def Delete(role,num):
 out = re.search(role,txt).group(num)
 string = txt.split(out)
 String_out = ''.join(string)
 print(String_out)
Delete('(這個池子的體積大約是34)(.*)(容積)',2)
def Add(role,re_out):
 out = re.compile(role)
 String_out = out.sub(re_out,txt)
 print(String_out)
Add(r'(這個池子的體積大約是34)(.{0})',r'\1的')

下面的圖片是小編運行這三個函數(shù)得到的結(jié)果,大家可以看看,如果有需要的可以參考一下,另外,小編需要人告訴我這個正則表達(dá)式如何用自動機(jī)來實現(xiàn),他的原理是什么,歡迎大家的留言哦。

總結(jié)

以上所述是小編給大家介紹的正則表達(dá)式實現(xiàn)添加、刪除、替換三種功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • Python使用正則表達(dá)式實現(xiàn)文本替換的方法
  • Java基于正則表達(dá)式實現(xiàn)的替換匹配文本功能【經(jīng)典實例】
  • MySQL中使用replace、regexp進(jìn)行正則表達(dá)式替換的用法分析
  • SQL Server中利用正則表達(dá)式替換字符串的方法
  • Javascript 正則表達(dá)式實現(xiàn)為數(shù)字添加千位分隔符
  • 使用 js+正則表達(dá)式為關(guān)鍵詞添加鏈接
  • javascript中使用正則表達(dá)式刪除前后空格的方法
  • 刪除javascript中注釋語句的正則表達(dá)式
  • 通過正則表達(dá)式刪除空行的方法
  • javascript中使用正則表達(dá)式實現(xiàn)刪除字符串中的前后空格
  • asp.net正則表達(dá)式刪除指定的HTML標(biāo)簽的代碼

標(biāo)簽:蚌埠 衡水 萍鄉(xiāng) 江蘇 大理 棗莊 衢州 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《正則表達(dá)式實現(xiàn)添加、刪除、替換三種功能》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    乌拉特中旗| 鸡东县| 禄丰县| 海城市| 彭阳县| 迁西县| 勐海县| 竹溪县| 宜君县| 泉州市| 鲁山县| 宜兰县| 滨州市| 昔阳县| 上犹县| 清水县| 温泉县| 卢湾区| 公主岭市| 浏阳市| 社旗县| 南通市| 保定市| 肃宁县| 西吉县| 大足县| 永安市| 故城县| 娄底市| 赤城县| 曲靖市| 龙江县| 海晏县| 西华县| 永宁县| 德兴市| 迁安市| 灯塔市| 中牟县| 平阴县| 淮安市|