[英]Is this regular expression simplification correct?
我正在閱讀這里的“瀏覽器如何工作”一文: 瀏覽器如何工作 (這是一個很好的閱讀。)
但有一次,他們提到這是他們定義整數的語法規則:
INTEGER :0|[1-9][0-9]*
它是,或者不是,完全相同(和更簡單)寫:
INTEGER :[1-9]*[0-9]
我想不出一個不滿足這兩個規則的案例,也不是第一條規則首選的原因。
是否有理由包含一個簡單的基本案例(如0
),還是只是迂腐?
這兩個表達式是不同的:第一個表達式需要101
,而第二個表達式不會。 本書中的表達式非常適合匹配整數而不允許前導零。
它們不一樣,因為我的簡化只能包含一個零,並且只有它是一個尾隨零。 例如。 這種情況與簡化規則不匹配:
101
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.