这是我狂野而又笨拙的伪代码。有谁知道如何使这个真实?
背景:
此动态内容来自ckeditor。许多人都在其中粘贴Microsoft Word内容。不用担心,如果我只是将该属性称为未触及,则它会加载漂亮。但问题是,我希望它只是缩写为125个字符。当我向其添加截断时,所有Microsoft Word脚本都会弹出。然后我添加了simple_format,并进行了清理和截断,甚至让我的控制器开始发现MS将要制作的特定变量并将其格式化。但是它们太多了,而且这似乎是一种非常混乱的方法。如此!意识到它本身就是干净的。我想,为什么不切片呢。但是,Microsoft Word文本变为空白但仍保持其在字符串中的编号位置。所以我想出了下面这个(可能很糟糕)的解决方案。
分三步。
使用切片语句将其剪切。
def about_us_truncated
x = self.about_us.find.first(regExp representing first actual character)
x.charCount = y
self.about_us[y..125]
end
我得到的唯一的另一个想法是一个正则表达式语句,允许它显式地切片实际字符,如下所示:
about_us([a-zA-Z][0..125])
,但这绝对不是它的编写方式。
以下是MS Word垃圾的一些示例文本:
≪! [If Gte Mso 9]>≪Xml>≪Br /> ≪O:Office Document Settings>≪Br /> ≪O:Allow Png/>≪Br /> ≪/O:Off...
答案 0 :(得分:1)
你没有提供太多信息,但是在寻求帮助之前,不要过于谨慎地试图建立这个正则表达式...
获取示例文本并将其粘贴到测试字符串区域的Rubular中,然后开始构建正则表达式。它在底部有一个很好的快速参考。
答案 1 :(得分:1)
答案 2 :(得分:1)
这在技术上并不是一个直接的答案,但它似乎是你能找到的最好的答案。
为了防止MS Word,您应该使用CK Editor的内置MS文字消毒剂。这是因为为它编写正则表达式可能非常复杂,你可以很容易地将标签分成两半并用它来破坏你的网站。
我作为解决方法所做的是,我在CK编辑器中以纯文本形式强制粘贴。