2008-09-05 25 views
2

有沒有人知道從一些常見的描述中自動生成正則表達式的庫(最好是php)或算法?如何動態生成字符串驗證?

例如,有可能的選項的形式:

- Length (=x, between x & y, etc) 
    - Starts with 
    - Ends with 
    - Character(s) x(yz) at index i 
    - Specify one or more alternative behavior based on the above 
    - And so on.. 

的想法是,在一個系統中的某些數據實體,你就可以去一個形式和設置此標準一個數據字段。之後,只要輸入該類型的數據實體的數據字段,就會根據正則表達式對其進行驗證。

雖然這似乎可能會變成一個複雜的問題,所以我並不期望任何人都能夠將它作爲一個整體解決。任何建議,非常感謝。

+1

找到*「等等......」*點的庫尤其複雜。只要你沒有專門寫出你要找的東西,就很難回答。 – hakre 2011-11-13 14:33:27

回答

2

簡單的球體就夠了嗎?對於globs來說,只需要用*替換*並添加^和$即可。或者可能是Excel風格的模式?爲這樣的簡單規則編寫正則表達式生成器應該不會太難......

我的觀點是,調整您的要求以簡化代碼,然後根據需要添加更多功能。

+0

Globs應該是,但我真的不想寫自己的代碼生成器,並且一些模式可能相當複雜。對於你的第二點,我希望我可以簡化,但驗證是來自許多不同意實體通用格式的實體的輸入;我想支持每個。 – 2008-11-02 20:14:21