Tag: 文本解析

从Rails中的字符串解析/提取文本?

我在Rails中有一个字符串,例如“这是一个Twitter消息。#Tossstoy的战争与和平。我喜欢这本书!”,我想解析文本并仅提取某些短语,如“战争与和平”利奥托尔斯泰“。 这是使用正则表达式并在“#books”到“。”之间解除文本的问题吗? 如果消息没有结构,例如:“这是一条Twitter消息,那么Leo Tolstoy的战争与和平我喜欢这本书!” 或者“这是Twitter的消息。我喜欢Leo Tolstoy #books的战争与和平书”如何在不知道事前口语的情况下可靠地拉出“战争与和平由Leo Tolstoy”。 有没有可以帮助我做到这一点的gem,方法等? 至少,你会说我想做什么? 它将帮助我在Google上搜索解决方案。 我尝试了几次“解析”搜索没有运气。 —编辑—基于@rogeliog建议,我将添加以下内容: 我可以忍受#books之后的垃圾文本,但之前没有。 我试过“匹配。(/#books。* /)” – 结果在这里: www.rubular.com/r/gM7oSZxF5M 。 但是我如何捕获结果#6? (例如,当某人将#books放在句子末尾时)? 有没有办法让我用正则表达式做if-then? 就像是: 如果[#books在消息的末尾], 然后[拿#books之前的最后10个字], 别的[match。(/#books。* /)] 如果您提供正则表达式,请使用rubular.com通过永久链接发布您的解决方案

如何在Ruby中对此字符串进行标记?

我有这个字符串: %{Children^10 Health “sanitation management”^5} 我想将其转换为将其标记为哈希数组: [{:keywords=>”children”, :boost=>10}, {:keywords=>”health”, :boost=>nil}, {:keywords=>”sanitation management”, :boost=>5}] 我知道StringScanner和Syntax gem,但我找不到足够的代码示例。 有什么指针吗?