簡體   English   中英

如何在Python中提取括號之間的值

[英]How to extract the value between the brackets in Python

我有一個很大的字符串,我正在嘗試解析它。 我想要做的是讀取clk (時鍾)值。 有沒有辦法以 Pythonic 的方式提取此文本({[ ]} 之間的文本?

  1. e4 {[%clk 1:23:29]} c5 {[%clk 1:30:39]} 2. Nf3 {[%clk 1:23:32]} d6 {[%clk 1:30:58]} 3. d4 {[%clk 1:23:50]} cxd4 {[%clk 1:31:21]}

目標是獲取clk值並將它們存儲在列表中。

假設您不能在其他括號內的值中包含括號內的值,使用正則表達式捕獲每個括號內的值很容易:

import re

s = """1. e4 {[%clk 1:23:29]} c5 {[%clk 1:30:39]} 2. Nf3 {[%clk 1:23:32]} d6
{[%clk 1:30:58]} 3. d4 {[%clk 1:23:50]} cxd4 {[%clk 1:31:21]}"""

results = re.findall(r"{\[%clk (.*?)\]}", s)
print(results)

結果:

['1:23:29', '1:30:39', '1:23:32', '1:30:58', '1:23:50', '1:31:21']

正則表達式模式的快速解釋:

{       #literal curly bracket
\[      #literal square bracket
%clk    #literal "%clk "
(.*?)   #match any number of characters, and capture them for the output
\]      #literal square bracket
}       #literal curly bracket

暫無
暫無

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

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