0

タブの間に項目を取得する方法を探しています

\t_e\t1\t_

1 を取得する必要がありますが、それ以外の場合はより長い文字列になります。

re.search("\t_e\t(.*)\t_", string).group(1)

その行は10回のうち9回、必要な文字列/値を返しますが、常にではありません。アンダースコアの後に明確にするために、文字から空白まで何でもかまいません。

4

3 に答える 3

0

を含まない最長一致を検索してみてください\t

>>> re.findall(r'([^\t]+)', '\t_e\t1\t_')
['_e', '1', '_']
于 2013-08-09T20:58:29.257 に答える
0

これを試して:

re.findall(r"(?s)(?<=\t)(.*?)(?=\t)", "\t_e\t1\t_")

出力:

['_e', '1']

基本的には、肯定的な先読みと後読みのアサーションを使用しています。また、(?s)「dotall」フラグを設定して、空白と一致させます。

于 2013-08-09T20:25:11.310 に答える