簡體   English   中英

python中的正則表達式

[英]The regular expression in python

美好的一天,只是想為我的英語道歉 - 事實上我正在使用谷歌翻譯。 向您展示如何在 Python 中的這個正則表達式中不連接名為 group 1 的索引和名為 'ID111' 的組?

這是我使用的正則表達式:
r'(^RU)?(?P<ID111>(?(1).+|[\\d]{5}))'

這是執行搜索的行:
RU Д-SK.ПК05.В.02695.jpeg (начинается с ТС)

這是一個方便服務的鏈接,用於檢查已經公開的數據的正則表達式:
https://regex101.com/r/mDh0kZ/1

事實是,如果我們搜索的一行 if 返回 true,那么“ID111”組會按預期錯過整行,並且只會錯過一組索引 1 之后的內容。我只想用正則表達式來解決它。

我將不勝感激任何幫助。

據我所知,條件甚至不是必需的,您只需要使用 2 個替代方法:1) 如果字符串以RU開頭,則從開頭匹配到最后一個. , 或 2) 匹配一個 5 位數的塊。

因此,使用

r'(?P<ID111>^RU.*(?=\.)|\d{5})'

參見Python 正則表達式演示

詳情

  • ^RU - 字符串開頭的RU
  • .*(?=\\.) - 除換行符以外的任何 0+ 個字符,直到最后一個. (排除它)
  • | - 或者
  • \\d{5} - 5 位數字(請注意,要匹配未包含其他數字的 5 位數字塊,請使用(?<!\\d)\\d{5}(?!\\d) )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM