资讯专栏INFORMATION COLUMN

字符串截取的几种办法(php,js,css三种)

shmily / 1556人阅读

摘要:如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,指字符串中最后一个字符,指倒数第二个字符,以此类推。子串中的字符数。

可能没什么含量,求少拍砖。
首先是PHP版本的。

    

其实只用mb_strimwidth一个函数就可以了,该函数的说明如下:
mb_strimwidth — 获取按指定宽度截断的字符串
string mb_strimwidth ( string $str , int $start , int $width [, string $trimmarker = "" [, string $encoding = mb_internal_encoding() ]] )
参数说明:
$str 为要截断的字符串(即原字符串,输出的字符串)
$start 从第几个字符开始截取,默认是0
$width 所需修剪的宽度
$trimmarker 截取后,在字符串末尾添加的内容(常见的为...表示省略),默认我i空
$encoding 这个参数很重要,如果字符串是中文,一定要加上。否则。。。。就可以看到“�”这东西了,以前没仔细看过这个函数,在wordpress主题里因为要显示文章的一小段内容,然后末尾就有乱码了,很久都不知道为什么。另外这个参数应该是跟网页的编码格式一致的,个人测试的时候网页编码utf-8,参数写为gbk的时候汉字就shit了。。(求大牛解释)

php版本的就这样了,有时候以为是php语言的问题,其实只是我们没仔细研究它。

js版本的:
substring()和substr()方法,两个方法*几乎*没区别,
substring()方法的第一个参数必填,为要提取的子串的第一个字符在 字符串 中的位置,第二个参数可选,是要提取的子串的最后一个字符在 stringObject 中的位置多 1位,默认无,到字符串末尾。
substr()第一个参数必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。第二个参数为可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
例子:
    
这个例子输出:lo world! 
从原字符串第三位开始,到末尾
    
这个例子输出:lo w
从原字符串第四位开始,到第七位
    
输出:lo world!
第三位开始到结尾
    
输出:lo worl
从第四位开始,截取7位。

JS这两个方法可以看
http://www.w3school.com.cn/js/jsref_substring.asp
http://www.w3school.com.cn/jsref/jsref_substr.asp

第三个就是CSS的了
CSS截取主要使用text-overflow这个属性。
text-overflow: [ clip | ellipsis |  ]

text-overflow默认值为clip ,即当内容超出容器时,会裁切掉超出的文本,值为ellipsis时,会用省略号替代超出的文本;也可以用特定的字符串来替代超出的文本(目前仅 firefox 支持)。

省略号的例子:
    .ellipsis{
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }
参考资料:
http://quirksmode.org/css/user-interface/textoverflow.html
https://developer.mozilla.org/en-US/docs/Web/CSS/text-overflow

其实css的说明看一下mozilla开发者网站的图例就明白了。在这里就不多说了。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/110878.html

相关文章

  • 符串截取几种办法phpjscss三种

    摘要:如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,指字符串中最后一个字符,指倒数第二个字符,以此类推。子串中的字符数。 可能没什么含量,求少拍砖。 首先是PHP版本的。 其实只用mb_strimwidth一个函数就可以了,该函数的说明如下: mb_strimwidth — 获取按指定宽度截断的字符串 string mb_strimwidt...

    yck 评论0 收藏0
  • 符串截取几种办法phpjscss三种

    摘要:如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,指字符串中最后一个字符,指倒数第二个字符,以此类推。子串中的字符数。 可能没什么含量,求少拍砖。 首先是PHP版本的。 其实只用mb_strimwidth一个函数就可以了,该函数的说明如下: mb_strimwidth — 获取按指定宽度截断的字符串 string mb_strimwidt...

    isLishude 评论0 收藏0
  • [分享]iOS开发-符串几种使用方法

    摘要:拼接字符串拼接字符串已存在的字符串,需要将和连接起来方法方法方法截取字符串截取字符串截取下标之前的字符串截取的值为截取下标之后的字符串截取的值为匹配字符串匹配字符串匹配得到的下标截取范围类的字符串截取的值为分隔字符串分隔字符串从字符中分隔成 拼接字符串 //拼接字符串 NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起...

    yexiaobai 评论0 收藏0
  • 使一个div垂直+水平居中几种方法

    摘要:前几天去一家互联网公司面试,面试官问到了这个应该算是比较简单的问题,在我自认为回答正确时,才知道这道题的答案有很多种,下面就让我们一起来探讨一下这个问题思路绝对定位居中原始版这个是我回答出来的,也是被各位所熟知的一种方法,设外层相对定位,内 前几天去一家互联网公司面试,面试官问到了这个应该算是比较简单的问题,在我自认为回答正确时,才知道这道题的答案有很多种,下面就让我们一起来探讨一下这...

    joyqi 评论0 收藏0
  • Laravel 5 系列教程三:视图变量传递和Blade

    摘要:所以在视图中我们需要这样输出这里应写成,而不是。这个时候注意更改视图的变量输出。 原文来自: https://jellybool.com/post/programming-with-laravel-5-blade-views-with-var 系列文章: http://segmentfault.com/blog/jellybool 免费视频教程地址 https://laravist...

    jindong 评论0 收藏0

发表评论

0条评论

shmily

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<