2015-10-20 47 views
0

如果我有兩個正則表達式,並且想要檢查這兩個表達式是否等價,那該怎麼辦?不同正則表達式的等價

通過「等價」,我的意思是這兩個正則表達式是否匹配完全相同的一組字符串?

例如,這兩個正則表達式是等價的:

b{1}b{0,} == bb* 

這兩個都沒有。

b != bb* 

在Python中的代碼的答案將是理想的。

+0

請問您能更清楚一點嗎?我不明白。 – Onilol

+0

@Onilol我相信,根據OP給出的例子,OP想要檢查兩個任意正則表達式是否產生相同的結果集。在他們的情況下,'b {1} b {0,} == bb *'這是真的,而'b {2} b {2,} == bb +'不會。 – d0nut

+0

我不希望這一般是可確定的,但會對閱讀完整分析非常感興趣 –

回答

0

我不相信有一個簡單,快速的方法來做到這一點在Python中,但你當然可以建立一個功能來做到這一點。 A post from the computer science stack exchange對如何確定2個正則表達式是否相同的4個步驟過程有詳細的解釋。