首先是獨立日快樂!爲那些誰申請!任何人都可以提供更好的解決方案?從左到右的正則表達式。使用python
我正在分析一個Ab Initio圖,爲此,我需要獲取組件的名稱,這是開發人員用來描述其功能的組件名稱,我可以從下面這行中提取。
name ='}}@0|@207000|80000|227000|100000|152000|126000|11654|RFMT: Generate Labels Header|Ab Initio Software|Built-in|1|100|0||6||32769|1|{1|0|}}}'
我試圖使用正則表達式來提取其是組件的名稱:RFMT:生成標籤標頭。
有問題來了:
我的分隔符是|從頭計算軟件這意味着,我需要使用正則表達式從右到左。 有沒有什麼辦法來實現使用Python。
我提出的最有效的解決方案是扭轉一切。
name = line[::-1]
name = re.search('erawtfoS oitinI bA\|(.*?)\|', name, re.IGNORECASE).group(1)
name = name[::-1]
我只想讓它更高效,因爲它將被用於數百個圖表,其中大部分文件都非常大。
如果您的組件名稱包含至少一個字母,這個正則表達式可以工作:[^ |] * [A-ZA-Z] + [^ |] * –