2011-11-15 13 views
2

我正在使用正則表達式來搜索適合我的限制的一些字符串。例如,「HHHHLLLHHHHHLLLLL」,我想找到該信H的總髮生難度大於8如何使用正則表達式搜索一定數量的字符串?

我試圖使用{8,}來搜索爲h等於或超過8個occurence到構造正則表達式中的字符串。但是,它似乎並不奏效。

Str1 = '"HHHHLLLHHHHHLLLLL"' 
m = re.search(r'regex', Str1).group(0) 

任何人都可以給我一些建議嗎?謝謝。

回答

5

不需要使用正則表達式。

Str1 = '"HHHHLLLHHHHHLLLLL"' 
if Str1.count("H") >= 8 : print "match" 
+0

@TimPietzcker誤讀。謝謝。 – FailedDev

+0

好主意。我也不會在這裏使用正則表達式+1。但也許有一個原因,她需要一個? –

+0

@TimPietzcker嗯,我認爲正則表達式對此是一種矯枉過正,然而我也爲正則表達式解決方案+1了。 :) – FailedDev

5
re.search('(?:H[^H]*){8}', str1) 

如果您的字符串中至少有8 H s會找到匹配項。

但是,這不適合正則表達式; FailedDev的解決方案將是更快,並且更容易理解。所以除非你有另外一個充分的理由來使用正則表達式,更好的方法是使用他的建議。

+0

不過,我很好奇如何寫這種正則表達式。謝謝你給我看。 – AnneS

相關問題