最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python?獲取指定開(kāi)頭指定結(jié)尾所夾中間內(nèi)容(推薦)

 更新時(shí)間:2023年02月20日 14:51:17   作者:來(lái)一粒4869  
獲取文章中指定開(kāi)頭、指定結(jié)尾中所夾的內(nèi)容。其中,開(kāi)頭和結(jié)尾均有多種,但最多也就十幾種,所以代碼還是具有可行性的,今天小編給大家介紹通過(guò)Python?獲取指定開(kāi)頭指定結(jié)尾所夾中間內(nèi)容,感興趣的朋友一起看看吧

cv的xdm可以直接翻到 需求代碼 用,想看中間的分析就老實(shí)往下看吧

little 背景

最近在做畢設(shè),需要將幾百篇整體結(jié)構(gòu)差不多的文章中提取出一些內(nèi)容,所以才有了這個(gè)blog。

需求

獲取文章中指定開(kāi)頭、指定結(jié)尾中所夾的內(nèi)容。其中,開(kāi)頭和結(jié)尾均有多種,但最多也就十幾種,所以代碼還是具有可行性的。

例:

X X 市 人 民 檢 察 院 指 控 : ‾ \underline{XX市人民檢察院指控:} XX市人民檢察院指控:?被告人XXX與被害人YYY(女,歿年41歲,系XXX妻子)因家庭矛盾多次發(fā)生爭(zhēng)執(zhí)。X年Y月Z日早晨,被告人XXX在X市X市場(chǎng)…被告人XXX為偏執(zhí)性精神障礙,具有限制刑事責(zé)任能力。
公 訴 機(jī) 關(guān) 認(rèn) 為 ‾ \underline{公訴機(jī)關(guān)認(rèn)為} 公訴機(jī)關(guān)認(rèn)為?,被告人XXX故意非法剝奪他人生命,致一人死亡,其行為應(yīng)以故意殺人罪追究刑事責(zé)任

所需內(nèi)容為:第一個(gè)下劃線到第二個(gè)下劃線中間的內(nèi)容,即“被告人XXX…責(zé)任能力。”。其中,“檢察院指控”是指定開(kāi)頭,“公訴機(jī)關(guān)認(rèn)為”是指定結(jié)尾。

解決方案

原本想著NLP有沒(méi)有現(xiàn)成的庫(kù)可以直接調(diào)包,后來(lái)搜了半天沒(méi)搜到,然后看到了正則表達(dá)式(真香)。

代碼

低配方法:

適用于只有一種固定開(kāi)頭和結(jié)尾,多種就不行了

import re
def GetMiddleStr(content,startStr,endStr):
#     patternStr = r'.*%s(.+?)%s.*'%(startStr,endStr) # 此模式不能跨段,‘.'只能匹配除了'\n'外所有單個(gè)字符
    patternStr = r'[\s\S]*%s(.+?)%s[\s\S]*'%(startStr,endStr)
#     patternStr = re.compile(patternStr,re.IGNORECASE) # 忽略大小寫(xiě) ,這個(gè)適用于英文文章
    middleStr= re.match(patternStr,content)
    if middleStr:
        return middleStr.group(1)

中配方法:

適用于多種固定開(kāi)頭和結(jié)尾,不過(guò)是蠻力法,可以優(yōu)化判斷,減少循環(huán)次數(shù)

import re
def GetMiddleStr2(content,startStr,endStr):
#     patternStr = r'.*%s(.+?)%s.*'%(startStr,endStr)
    goalStr = str('')
    
    for sStr in startStr:
        for eStr in endStr:
            patternStr = r'[\s\S]*%s(.+?)%s[\s\S]*'%(sStr,eStr)
            middleStr= re.match(patternStr,content)
            if middleStr:
                if not goalStr: # 判斷 空 時(shí)候的值
                    goalStr = middleStr.group(1)
                else:        # 非空時(shí),將將短的留下來(lái) 
                    goalStr = middleStr.group(1) if len(goalStr)>len(middleStr.group(1)) else goalStr
                    
    return goalStr

運(yùn)行效果

content='且得到被害人家屬諒解。綜上,建議法庭對(duì)被告人XXX減輕處罰。經(jīng)審理查明:被告人XXX與被害人YYY因家庭矛盾多次發(fā)生爭(zhēng)執(zhí)。X年Y月Z日清晨,被告人XXX在X市X市場(chǎng)......被告人XXX為偏執(zhí)性精神障礙,具有限制刑事責(zé)任能力。公訴機(jī)關(guān)認(rèn)為,被告人XXX故意非法剝奪他人生命,致一人死亡,其行為應(yīng)以故意殺人罪追究刑事責(zé)任'
startStr = '經(jīng)審理查明:'
endStr = '公訴機(jī)關(guān)認(rèn)為,'
print(GetMiddleStr(content,startStr,endStr))

在這里插入圖片描述

第二種運(yùn)行時(shí)將startStr和endStr分別賦值為:[‘AAA’,‘BBB’,…],即可
例如:
startStr = [‘審理查明:’,‘審理查明:’,‘檢察院指控’]
endStr = [‘經(jīng)鑒定’,‘經(jīng)鑒定,’, ‘歸案后’]

代碼講解

正則表達(dá)式查一下手冊(cè)即可:
.*:除了’\n’以外所有字符重復(fù)多次
[\s\S]:空白字符或者非空白字符,即所有字符(一個(gè)集合∪它在全集中的補(bǔ)集,即全集)
其余查一下手冊(cè)就ok
正則表達(dá)式手冊(cè)

到此這篇關(guān)于Python 獲取指定開(kāi)頭指定結(jié)尾所夾中間內(nèi)容的文章就介紹到這了,更多相關(guān)Python 獲取指定開(kāi)頭指定結(jié)尾中間內(nèi)容內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • flask框架自定義過(guò)濾器示例【markdown文件讀取和展示功能】

    flask框架自定義過(guò)濾器示例【markdown文件讀取和展示功能】

    這篇文章主要介紹了flask框架自定義過(guò)濾器,結(jié)合實(shí)例形式分析了flask基于自定義過(guò)濾器實(shí)現(xiàn)markdown文件讀取和展示功能相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11
  • Python+Matplotlib繪制帶有對(duì)角線的散點(diǎn)圖的示例代碼

    Python+Matplotlib繪制帶有對(duì)角線的散點(diǎn)圖的示例代碼

    Matplotlib 是一個(gè)用于繪制二維圖形的 Python 庫(kù),這篇文章主要介紹了Python如何利用Matplotlib繪制帶有對(duì)角線的散點(diǎn)圖,需要的小伙伴可以參考一下
    2023-06-06
  • 詳解Python中通用工具類與異常處理

    詳解Python中通用工具類與異常處理

    在Python開(kāi)發(fā)中,編寫(xiě)可重用的工具類和通用的異常處理機(jī)制是提高代碼質(zhì)量和開(kāi)發(fā)效率的關(guān)鍵,本文將介紹如何將特定的異常類改寫(xiě)為更通用的ValidationException,并創(chuàng)建一個(gè)通用的工具類Utils,需要的可以參考下
    2024-12-12
  • Python實(shí)現(xiàn)將PowerPoint轉(zhuǎn)為HTML格式

    Python實(shí)現(xiàn)將PowerPoint轉(zhuǎn)為HTML格式

    有時(shí)我們需要將精心設(shè)計(jì)的PPT發(fā)布到網(wǎng)絡(luò)上以便于更廣泛的訪問(wèn)和分享,本文將介紹如何使用Python將PowerPoint轉(zhuǎn)換為HTML格式,需要的可以參考下
    2024-04-04
  • python中如何使用xml.dom.minidom模塊讀取解析xml文件

    python中如何使用xml.dom.minidom模塊讀取解析xml文件

    xml.dom.minidom模塊應(yīng)該是內(nèi)置模塊不用下載安裝,本文給大家介紹python中如何使用xml.dom.minidom模塊讀取解析xml文件,感興趣的朋友一起看看吧
    2023-10-10
  • python開(kāi)發(fā)環(huán)境PyScripter中文亂碼問(wèn)題解決方案

    python開(kāi)發(fā)環(huán)境PyScripter中文亂碼問(wèn)題解決方案

    PyScripter是一個(gè)使用Delphi開(kāi)發(fā)的開(kāi)源的Python集成開(kāi)發(fā)環(huán)境(IDE),PyScripter支持Python2.4、2.5、2.6、2.7、3.0、3.1、3.2,而且可以根據(jù)需要切換。
    2016-09-09
  • pycharm開(kāi)發(fā)一個(gè)簡(jiǎn)單界面和通用mvc模板(操作方法圖解)

    pycharm開(kāi)發(fā)一個(gè)簡(jiǎn)單界面和通用mvc模板(操作方法圖解)

    這篇文章主要介紹了pycharm開(kāi)發(fā)最簡(jiǎn)單的界面和通用mvc模板的方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • python刪除過(guò)期文件的方法

    python刪除過(guò)期文件的方法

    這篇文章主要介紹了python刪除過(guò)期文件的方法,涉及Python日期與文件的相關(guān)操作技巧,需要的朋友可以參考下
    2015-05-05
  • 在python中只選取列表中某一縱列的方法

    在python中只選取列表中某一縱列的方法

    今天小編就為大家分享一篇在python中只選取列表中某一縱列的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Python 連連看連接算法

    Python 連連看連接算法

    這段時(shí)間老是“不務(wù)正業(yè)”的搞一些東西玩。之前的貪吃蛇,俄羅斯方塊激發(fā)了我研究游戲算法的興趣。經(jīng)過(guò)1個(gè)星期的構(gòu)思,連連看的連接算法終于出爐了。再過(guò)一段時(shí)間就基于這個(gè)算法使用JavaScript推出網(wǎng)頁(yè)版的連連看。下面是說(shuō)明及代碼。
    2008-11-11

最新評(píng)論

汶川县| 济宁市| 涪陵区| 红桥区| 镇康县| 梅河口市| 巩留县| 阜新| 雷州市| 德惠市| 武宣县| 会宁县| 丹寨县| 石河子市| 土默特左旗| 习水县| 漾濞| 富锦市| 公主岭市| 义乌市| 丰顺县| 秦安县| 习水县| 寿光市| 托克托县| 葫芦岛市| 乌海市| 壶关县| 舟曲县| 洱源县| 衡阳县| 永泰县| 巴彦县| 丹巴县| 铁岭县| 时尚| 弥勒县| 绍兴市| 论坛| 南丹县| 金湖县|