第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

正則表達式不會產(chǎn)生預(yù)期的結(jié)果

正則表達式不會產(chǎn)生預(yù)期的結(jié)果

元芳怎么了 2021-10-12 16:28:57
我使用 Python 2.7re findall來查找匹配案例列表,但第一個案例得到的比我想要的更多。我的源代碼在這里,從長字符串中找到一些導入數(shù)據(jù)。結(jié)果列表為: ('1', 'GLOBAL_SETTINGS') ('10', 'TX_MULTI_VERIFICATION 2437 DSSS-1 NON_HT BW-20 TX1')  ('12', 'TX_MULTI_VERIFICATION 2412 CCK-11 NON_HT BW-20 TX1')第 1、10、12 項。這不是我想要的。我想要第 9、11、12 項
查看完整描述

2 回答

?
夢里花落0921

TA貢獻1772條經(jīng)驗 獲得超6個贊

更新


如果您堅持使用正則表達式來跟蹤失敗,您可以執(zhí)行以下操作:


for i in s.split('\n'):

    number = re.findall(r'^\d+', i)

    if number: failure = re.findall(r'^(\d+)\.(.*?)\s_{2,}', i)

    if 'failed' in i:

        print(failure)

返回:


[('9', 'TX_MULTI_VERIFICATION 2412 DSSS-1 NON_HT BW-20 TX1')]

[('11', 'TX_MULTI_VERIFICATION 2472 DSSS-1 NON_HT BW-20 TX1')]

[('12', 'TX_MULTI_VERIFICATION 2412 CCK-11 NON_HT BW-20 TX1')]

您可以在此處查看此正則表達式的一種形式。


查看完整回答
反對 回復 2021-10-12
?
縹緲止盈

TA貢獻2041條經(jīng)驗 獲得超4個贊

您可以使用re.split分割成多個部分,然后[failed]在每個部分中查找字符串:


splitted = re.split(r'(\d{1,2})\.(.*)(?= _{3,})', text)


failed = [(splitted[i-2], splitted[i-1]) for i, s in enumerate(splitted) if re.search(r'\[failed\]', s)]


failed

# [('9', 'TX_MULTI_VERIFICATION 2412 DSSS-1 NON_HT BW-20 TX1'), 

#  ('11', 'TX_MULTI_VERIFICATION 2472 DSSS-1 NON_HT BW-20 TX1'), 

#  ('12', 'TX_MULTI_VERIFICATION 2412 CCK-11 NON_HT BW-20 TX1')]

這里將re.split文本分成三個子組:

1. 第 1 組(部分編號)

2. 第 2 組(部分標題)

3. 第 3 組(部分正文)


如果第 3 組中存在匹配,則返回第 1 組和第 2 組 - 因此,splitted[i-2]和splitted[i-1])


查看完整回答
反對 回復 2021-10-12
  • 2 回答
  • 0 關(guān)注
  • 182 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號