मैं स्ट्रिंग से शब्दों को पार्स करने और उन्हें सरणी में रखने की कोशिश कर रहा हूं। मैं निम्नलिखित बात की कोशिश की है:रूबी: स्ट्रिंग से शब्द निकालने
@string1 = "oriented design, decomposition, encapsulation, and testing. Uses "
puts @string1.scan(/\s([^\,\.\s]*)/)
यह चाल करने के लिए लगता है, लेकिन यह थोड़ा अस्थिर है (मैं उदाहरण के लिए अधिक विशेष वर्ण शामिल करना चाहिए)। क्या रूबी में ऐसा करने का कोई बेहतर तरीका है?
वैकल्पिक: मेरे पास सीएस कोर्स विवरण है। मैं इसके सभी शब्दों को निकालने का इरादा रखता हूं और उन्हें एक स्ट्रिंग सरणी में रखता हूं, उत्पादित सरणी से अंग्रेजी भाषा में सबसे आम शब्द को हटा देता हूं, और फिर बाकी शब्दों को टैग के रूप में उपयोग करता हूं जो उपयोगकर्ता सीएस की खोज के लिए उपयोग कर सकते हैं पाठ्यक्रम।
अंग्रेजी भाषा नियमित अभिव्यक्तियों के साथ पार्स करना मुश्किल है। क्या आपने एक प्राकृतिक भाषा पार्सर माना है? यह वाक्य में अवधि की अवधि के बीच अंतर को और अधिक सटीक रूप से पहचान लेगा। स्मिथ यहाँ है। 'और' श्री 'को डॉट समेत एक शब्द के रूप में वापस लौटाएं, लेकिन' यहां 'बिना डॉट के। –
@ मार्कबियर, बहुत अच्छा मुद्दा, मैं इस बिंदु पर नहीं था। मैं इस पर ध्यान दूँगा। धन्यवाद! – sybohy