`

ruby 去掉字符串中的html代码讨论

阅读更多

从网上查到rails中去掉字符串中的html标签 的方法如下:

#去掉html标签,取出文本部分 ,并按指定的长度切断返回字符串。
 def strip_html(text,len=0,endss="...")

   if text.length>0
    attribute_key = /[w:_-]+/
    attribute_value = /(?:[A-Za-z0-9]+|(?:'[^']*?'|"[^"]*?"))/
    attribute = /(?:#{attribute_key}(?:s*=s*#{attribute_value})?)/
    attributes = /(?:#{attribute}(?:s+#{attribute})*)/
    tag_key = attribute_key
    tag = %r{<[!/?[]?(?:#{tag_key}|--)(?:s+#{attributes})?s*(?:[!/?]]+|--)?>}
    ss=text.gsub(tag, '').gsub(/s+/, ' ').strip
   
    if len>0 && ss.length>0
    ss=sub_utf8(ss,len,endss)
    end
   end
   return ss
 end

但是在我的工程中不是太起作用,还不如一个小小的正则表达式给力,如下:

@str.gsub(/<\/?.*?>/,"")

我觉得@str.gsub(/<\/?.*?>/,"")也可以把html标签去除的很干净,还没遇到什么问题,上面那个函数确实也很不错,但是。。。。给出参考,希望有兴趣的童鞋可以试试,最好能向我反馈一下效果哈,谢谢大家了。

 

1
4
分享到:
评论

相关推荐

    ruby的二进制字符串与hex互转,二进制字符串与整数互转的工具函数

    本资源是ruby代码,提供了一系列封装好的函数,用于快速进行转换,一个函数搞定,包括如下转换,二进制字符串与hex字符串的互转。二进制字符串与整数互转,包括uint8,uin16,uint32, 以及本地字节序和网络字节序两种...

    Ruby-Stringex一些实用的Ruby字符串扩展类

    9. **去除空白字符**:`strip_whitespace`方法可以快速去除字符串中的所有空白字符,这对于清理用户输入的数据非常实用。 Stringex库的源代码位于`stringex-master`这个压缩包中,包含了完整的实现和测试用例。如果...

    Ruby-Unicode字符串调试帮助

    在Ruby编程语言中,处理Unicode字符串是一项常见的任务,尤其是在全球化和多语言应用的开发中。Unicode是一个广泛采用的标准,它包含世界上几乎所有的字符集,使得跨语言的数据交换变得可能。然而,由于Unicode的...

    Ruby中常用的字符串处理函数使用实例

    2.判断字符串中是否包含另一个串 代码如下: str.include? other_str =&gt; true or false “hello”.include? “lo” #=&gt; true “hello”.include? “ol” #=&gt; false “hello”.include? ?h #=&gt; true 3.字符串插入 ...

    Ruby 字符串处理

    Ruby将字符串像数字一样处理.我们用单引号(‘…’)或双引号(…)将它们括起来. ruby&gt; abc  abc ruby&gt; ‘abc’  abc 单引号和双引号在某些情况下有不同的作用.一个由双引号括起来的字符串允许字符由一个前置的斜杠...

    ruby源代码 ruby源代码 ruby源代码 ruby源代码2

    ruby源代码 ruby源代码 ruby源代码 ruby源代码2

    ruby源代码 ruby源代码 ruby源代码 ruby源代码4

    ruby源代码 ruby源代码 ruby源代码 ruby源代码4

    从字符串中返回指定数目的字符源代码.zip

    标题提到的"从字符串中返回指定数目的字符源代码"涉及到的是字符串操作的核心概念,尤其是在编程语言中如何截取字符串的一部分,通常这涉及到字符串的切片或者子串提取功能。下面我们将深入探讨这个主题。 在大多数...

    ruby源代码 ruby源代码 ruby源代码 ruby源代码3

    ruby源代码 ruby源代码 ruby源代码 ruby源代码3

    多行字符串的表示方式

    在`string.rb`文件中,我们还可以学习到Ruby字符串的一些其他特性,如字符串连接、字符串格式化、字符串方法等。例如,`+`操作符用于字符串连接,`%`运算符用于格式化输出,`chomp`方法用于移除字符串末尾的换行符,...

    ruby基础教程(第四版)第14章 字符串类1

    在Ruby编程语言中,字符串是极其重要且常用的数据类型,用于存储文本信息。在本章“ruby基础教程(第四版)第14章 字符串类1”中,我们将深入探讨Ruby中的字符串处理方法和特性。 首先,创建字符串在Ruby中有多种...

    ruby源代码 ruby源代码 ruby源代码 ruby源代码5

    1. 面向对象:在Ruby中,一切都是对象,包括基本数据类型如整数、字符串和布尔值。这种设计使得面向对象编程更加自然和直观。 2. 动态性:Ruby是一种动态类型语言,变量的类型在运行时确定,允许灵活的编程风格。 ...

    ruby 中文教程(带例子代码)

    它可能包含字符串资源,这些资源在程序中根据用户的选择显示为不同的语言。 最后,文件名中的数字和点(如E3.8-1.rb)可能表示章节和小节,这是一种常见的教程组织方式。例如,E4.4-1.rb可能对应第四章第四小节的第...

    字符串压缩

    标签中的“源码”意味着可能涉及具体实现代码,而“工具”可能是指使用某种编程工具或者库(如Ruby的`zlib`库)来实现字符串压缩功能。对于学习和开发,理解这些基础概念并能实际操作是十分重要的,特别是在处理...

    用string拆分字符串

    8. **Ruby中的字符串拆分** Ruby的`split`方法非常直观: ```ruby str = "apple,banana,grape" fruits = str.split(",") puts fruits # 输出:apple\nbanana\ngrape ``` 以上就是不同编程语言中使用`string`...

    Ruby中文教程及相关源代码

    1. **基础语法**:Ruby的基本数据类型,如整型、浮点型、字符串、数组、哈希等,以及变量的使用,如局部变量、实例变量和全局变量。 2. **控制结构**:包括条件语句(如if/else,case)和循环(如for,while,until...

    Ruby中实现把字符串转换为类的2种方法

    最近有个需求,需要根据一个字符串当作一个类来使用,例如: 有一个字符串 “ChinaMag”,根据这个字符串调用 类 ChinaMag下的方法。 解决办法: 1.rails可以使用 constantize方法。 代码如下: pry(main)&gt; ...

    Ruby-GeoPattern从字符串创建漂亮的生成几何背景图像

    Ruby-GeoPattern是一个开源库,由Jason Long 创建,它允许开发者根据输入的任意字符串生成美观的几何背景图像。这些图像可以用于网站设计、图形艺术或其他任何需要独特视觉元素的地方。GeoPattern利用了Ruby语言的...

Global site tag (gtag.js) - Google Analytics