簡體   English   中英

在Python中使用正則表達式創建匹配項

[英]Creating a match with regex in Python

我目前正在使用正則表達式來匹配某些行,例如:

(.0025 = 625 dollars per contract)

我有一個正則表達式,用於類似的表達式,可以完成工作。 但是,我想知道是否有更好的實現方法:

new_string = re.search(r'.*?\([^$]*?([\$|\d][^)]* per contract)\)', cell)

我知道我可以更改尋找美元符號的點,但是還有其他東西嗎?

如果您還可以解釋您的正則表達式,則將有所幫助。

如果您始終想收取價格,則可以執行以下操作:

regex_string = r'= (.*? per contract)'

這引起了:

'625 dollars per contract'

它所要做的只是取等號(及其后的空格)和“每個合同”一詞之間的任何內容。 由於您的正則表達式假設“每份合同”一詞始終存在,因此我的也是如此。

如果您只想要價格,則可以執行以下操作:

>>>regex_string = r'= (.*?) per contract'
>>>matchobj = re.search(regex_string, "(.0025 = 625 dollars per contract)")
>>>matchobj.groups()
('625 dollars',)

暫無
暫無

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

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