substr与substring(java和js中必须小写),sql中使用substr和substring都可以,效果一样(注意角标从1开始,截取指定位数的字符)

var s ='2019-01-01';

s.replace(/-/g,'.').substr(0,7);    字符全量替换    注意是 . 被单引号括住   结果2019.01 

 

开发中经常遇到,字符串过长,无法完全显示的问题,这时候就需要截取我们所需要的长度,后面显示省略号或其他字符

每30个字符拼接</br>换行,使用substring(注意和subStr的区别)

var encodeSiteKey = "123456789012345678901234567890AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb99999"
var ss="";
var len = 30;
while (true) {
          if (encodeSiteKey.length > len) {
              var s = encodeSiteKey.substr(0, len);//拿到前面的30个字符
              encodeSiteKey = encodeSiteKey.substr(len); //拿到后面的30个字符
              ss = ss + s + "</br>" ;
              if (encodeSiteKey.length < 30) {
                  ss = ss + encodeSiteKey;
                  break;
              }
          }else {
              ss = encodeSiteKey;
              break;
          }
      }

总结:JS和SQL里建议使用substr来截取指定长度   java代码中截取使用substring要去数结束的脚标
java中截取指定字符到该行的末尾   int index = "hello".indexOf("e") 找到e首次出现的脚标,再进行"hello".substring(index)截取到行尾即可
JS中的substring和substr的区别(注意substring和substr必须是小写):
"hello".substring(from开始脚标, to结束脚标); //to可以省略,即截取到最后

"hello".substr(start字符串下标, length截取的长度); //length可以省略


sql中SUBSTRING和SUBSTR 使用结果是一样: (注意索引都是从1开始,截取指定长度的字符,若省略第三个参数则截取到最后)
SELECT SUBSTR('abcdefg',1,4指定子字符串的长度); //即从第一位开始,截取4位
SELECT substring('abcdefg',1,4指定子字符串的长度);//即从第一位开始,截取4位

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章