多正則表達式在python中抓取數字

約翰·W

我不是正則表達式的專家,但我從頭開始做了這個,我只需要基於這個獲取數字和字母 [ae] :

SnnEnn   where n represent numbers  
SnnEnnl  where l = letter [a-e]  

nnXnn    where n represent numbers 
nnXnnl   where l = letter [a-e] 

但在少數情況下會失敗:

02x01      match '02x01'                                      fail (It should be '02' '01')
03x02a     match '03x02'..............groups 'a'             fail (It should be '03' '02' 'a')
S03E01     match 'S03E01'.............groups '03'  '01'      ok
S03E01a    match 'S03E01a'............groups 'S03E01'  'a'   fail.(It should be '03' '01' 'a')

03x02xxxx  match '03X02xxxx' groups '03x02xxxx'    fail (it should be just [a-e] and limit to one letter) 
S03E01xxx  match '03E01xxxx' groups '03e01xxxx'    fail (idem)

正則表達式101

我正在使用這個正則表達式:

(\d+[x]\d+\w)([a-e])|(\d+[x]\w+)|\bS(?P<Season>\d+)E(?P<Episode>\d+)|(\b[s]\d+[e]\d+)([a-e])

感謝您的任何幫助

第四隻鳥

你可能會用

\b(S)?(?P<Season>\d+)(?(1)E|x)(?P<Episode>\d+)(?P<Letter>[a-e]?)\b
  • \b 一個詞的邊界
  • (S)?可選擇S在第 1 組中捕獲
  • (?P<Season>\d+)Season- 匹配 1+ 位數字
  • (?條件(有關條件,請參閱此頁面
    • (1)E 如果組 1 存在,則匹配 E
    • | 別的
    • x 比賽 x
  • ) 關閉條件
  • (?P<Episode>\d+)Episode- 匹配 1+ 位數字
  • (?P<Letter>[a-e]?)Letter- 匹配範圍 ae
  • \b 一個詞的邊界

正則表達式演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 Python 中使用正則表達式擺脫星號“*”中的數字

正則表達式匹配 shell 腳本中數組中的數字

數字的條件(?)正則表達式

正則表達式 php 前瞻數字

我想使用正則表達式在 python 中刪除星號內的數字

用於查找數字的正則表達式在 Swift 中以特殊字符結尾

正則表達式字符串在javascript中只包含數字和*,#,+

Javascript - 如何在正則表達式中搜索大於 x 的數字

R從括號內的字符串中提取多個數字正則表達式

postgresql 函數中的正則表達式

僅用於數字和數字的正則表達式,包括斜線

帶有最小字母、數字和最小非字母數字字符的正則表達式 Python

正則表達式在python中進行數據準備和處理

匹配正則表達式中的連續數字,同時忽略python3 re中的破折號

使用正則表達式部分屏蔽一組數字的數據

雪花正則表達式獲取字符串中的最後 7 位數字

正則表達式用編號的佔位符替換字符串中的數字

在多列上迭代和應用正則表達式函數/str 計數

正則表達式 | 提取定義字符串前面的數字

通過正則表達式獲取逗號分隔的數字

帶 & 不帶逗號的數字的正則表達式

正則表達式用新行代替點而不是數字

正則表達式:僅允許大寫和特定數字

正則表達式匹配日期中的數字但不應該

前八個字母和最後一個數字的正則表達式

Julia - 使用正則表達式從字符串中提取數字

正則表達式:僅提取數字直到第一個空格

正則表達式允許 + 在開頭和數字

java正則表達式查找唯一數字