我有字符串(約100,000)的一個表生成合理的字符串:在以下格式使用圖案
pattern , string
例如 -
*l*ph*nt , elephant
c*mp*t*r , computer
s*v* , save
s*nn] , sunny
]*rr] , worry
爲了簡化,假設一個*
表示元音,輔音看臺不變,]
表示任一「Y」或「W」(比方說,例如,半元音/音韻輪元音)。
給定一個模式,生成可能的合理字符串的最佳方法是什麼?一個合理的字符串被定義爲一個字符串,其中每個連續的兩個字母的子字符串在數據集內部都沒有在模式中指定。
例如 -
H * LL * - >喂,你好,呼啦......
「你好」是明智的,因爲「哈」,「人」,「羅」可以在數據設置爲可見用'有','也'和'低'兩個字。兩個字母'll'不被考慮,因爲它在模式中被指定。
什麼是簡單而有效的方法來做到這一點? 有沒有任何圖書館/框架來實現這一目標?
我沒有記住特定的語言,但更喜歡使用Java的這個程序。
你應該早一點提到字母大小,然而這個解決方案會縮放。 爲了記錄,它在1.6ms內產生60'\ * l \ * ph \ * nt',在0.5ms內產生20'h \ * ll \ *'(在字典中有98569個字)。 – fra
可愛的解決方案。花了一些時間去理解它(我對Python相對來說比較陌生)。這是我一直在尋找的東西。謝謝@fra。 – Olenayuko