`
xiaomiya
  • 浏览: 131482 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

输入限制字符串

阅读更多

直接看代码:

 

参数说明:

str:就是字符串

len:所要限制的字数

str2:以什么来结束,如果不输入就是以...结束

这里作为参数传进来,用户可以任意几个点

 

//限制字数
function mCutStr(str, len, str2) {
    if (str == '') {
        return '';
    }
    if (str2 == '') {
        var str3 = '';
    } else {
        var str3 = str2 || '...';
    }
    var str_length = 0; //实际长度
    var str_len = 0;
    str_cut = new String();
    str_len = str.length;
    for (var i = 0; i < str_len; i++) {
        a = str.charAt(i);
        str_length++;
        //中文的情况多加1
        if (escape(a).length > 4) {
            //中文字符的长度经编码之后大于4
            str_length++;
        }
        str_cut = str_cut.concat(a);
        if (str_length <= len && (i == (str_len - 1) || i == (str_len - 2))) {
            return str;
        }
        if (str_length >= len && i < (str_len - 2)) {
            str_cut = str_cut.concat(str3);
            return str_cut;
        }
    }
}

 

用的时候直接调方法就ok,

 

 

今天又弄了一下

 

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JS限制输入字数</title>
</head>
<body>
<p id="p1"></p>
<p id="p2"></p>
<script type="text/javascript">
function cutstr(str,len,end){  
    if (str == '') {
        return '';
    }
    if (end == '') {
        var str3 = '';
    } else {
        var str3 = end || '...';
    }
   var str_length = 0;  
   var str_len = 0;  
      str_cut = new String();  
      str_len = str.length;  
      for(var i = 0;i<str_len;i++){  
        a = str.charAt(i);  
        str_length++;  
        if(escape(a).length > 4){    
            str_length++;  
         }  
            str_cut = str_cut.concat(a);  
         if(str_length>=len){  
            str_cut = str_cut.concat(end);  
            return str_cut;  
         }  
    }  
    if(str_length<len){  
     return  str;  
    }  
}
var a = "阿11ss莱s克剪s短发绿卡s时间的福利卡收费";
var b = "你好你好你好你好你好你好";
var p1 = document.getElementById("p1"); 
var p2 = document.getElementById("p2"); 
p1.innerHTML = cutstr(a,10,'..');
p2.innerHTML = cutstr(b,10,'....');
</script>
</body>
</html>

 

0
1
分享到:
评论

相关推荐

    用C语言写的链式字符串运算算法

    传统的字符数组(如C语言中的char数组)在处理字符串时,通常受到固定长度的限制。而链式字符串则通过动态创建节点来存储每个字符,这样可以灵活地处理任意长度的字符串,避免了数组长度预设的局限性。 首先,我们...

    以太坊solidity字符串拼接实现

    因此,在进行字符串拼接时应当谨慎,并对输入进行适当的验证和限制。 除了上述提到的几种实现字符串拼接的方法外,Solidity还推荐了一种新的字节拼接方式。自Solidity 0.6.0版本以来,我们可以使用`bytes.concat`...

    1138:将字符串中的小写字母转换成大写字母.cpp

    1138:将字符串中的小写字母转换成大写字母 ...输入一行,包含一个字符串(长度不超过100,可能包含空格)。 【输出】 输出转换后的字符串。 【输入样例】 helloworld123Ha 【输出样例】 HELLOWORLD123HA

    c语言输入字符串数组四组输入字符串数组

    为了防止缓冲区溢出,可以限制`scanf()`中字符串的宽度,例如`%99s`,这样最多读取99个字符: ```c scanf("%99s", strings[i]); ``` 并且,可以通过检查`scanf()`的返回值确保成功读取了字符串,否则打印错误...

    比较字符串1

    标题 "比较字符串1" 描述的是一个算法训练问题,旨在比较两个字符串的字典序,并在它们不相等时找出第一个不同的字符。这个问题涉及到的主要知识点包括字符串操作、字典序比较以及基本的ASCII码理解。 首先,我们...

    Java分割字符串

    `split()`方法返回的是一个字符串数组,长度取决于输入字符串中匹配正则表达式的次数。如果正则表达式不匹配任何内容,结果数组的长度为1,包含整个原始字符串。 ### 6. 避免空元素 有时,连续的分隔符会导致生成空...

    在大字符串中寻找小字符串

    2. **错误处理**:检查输入参数是否合法,例如非字符串类型。 3. **性能优化**:考虑在保持正确性的前提下,如何提高函数的执行效率。 4. **代码可读性和可维护性**:遵循良好的编程风格,添加必要的注释,方便他人...

    2049:例5.19字符串判等.cpp

    2049:【例5.19】字符串判等 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 26376 通过数: 9899 【题目描述】 判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等。 【输入】 两行,每行...

    逆序输出(字符串)

    - 对于不确定长度的字符串,可以考虑使用动态内存分配函数`malloc()`或`calloc()`来创建足够大的空间,避免固定大小数组可能带来的限制。 4. **其他逆序方法**: - **双指针法**:使用两个指针分别指向字符串的...

    字符串编辑1

    在设计这个算法时,时间效率是关键,因为输入的字符串长度不超过40个字符。虽然这是一个较小的规模,但考虑到可能的重复操作,优化算法以在常数时间内完成单次操作仍然是必要的。内存限制为512MB,这意味着我们可以...

    获取一个字符串中的数字组

    标题中的“获取一个字符串中的数字组”是指从...例如,输入字符串长度的限制、数字序列的复杂性(如负数、浮点数等),以及错误处理机制。通过这样的练习,我们可以增强对字符串处理、逻辑控制和数据类型转换的理解。

    Arduino 字符串读取

    `command`是用户输入的命令字符串,`function`是当命令匹配成功时调用的函数指针。 5. **处理输入**:在`loop()`函数中,使用`SerialCommand.parse()`来处理新的串口输入。这会检查缓冲区中的新数据,并尝试匹配已...

    label或者输入框textfField输入的字符串的大小宽度

    7. **计算字符串宽度**:在编程中,可以使用`boundingRect(with:options:attributes:context:)`方法来计算特定字符串在特定字体和大小下的尺寸。例如,对于`UILabel`,你可以先计算出文本的`intrinsicContentSize`,...

    字符串与二维码之间的相互转换

    因此,在进行字符串与二维码的转换时,应确保数据的安全性,例如对敏感信息进行加密,或者限制可扫描的二维码类型。 总的来说,字符串与二维码的相互转换是IT领域中一个实用的技术点,广泛应用于各种场景。理解和...

    模式字符串匹配

    从标准输入读取若干个不含空格的字符串。其中,第一个字符串为模式。其余为待测字符串。 【输出形式】 将匹配于模式的字符串输出到标准输出,每行一个。 【输入样例】 abcd?123* abce123 abcda...

    1162:字符串逆序.cpp

    1162:字符串逆序 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 31557 通过数: 20735 【题目描述】 输入一串以‘!’结束的字符,按逆序输出。 【输入】 如题述。 【输出】 如题述。 【输入样例】 abc! 【输出...

    字符串计数 C语言实现 ACM习题

    - 字符串的最大长度被设置为15,这限制了输入字符串的长度,需要注意实际应用时可能存在的边界情况。 - 在处理大量字符串时,链表的性能可能会受到影响,尤其是在频繁插入操作的情况下。因此,在实际开发中,可以...

    js限制textarea每行输入字符串长度的代码.docx

    在JavaScript中,对`textarea`元素进行输入字符串长度限制是一个常见的需求,特别是在处理用户输入时,需要确保数据格式的正确性。在HTML中,`textarea`控件不像`input[type="text"]`那样可以直接通过`maxlength`...

    密码强度(字符串数组).cpp

    输入为一个密码字符串,字符串长度不超过50个字符。 输出说明 输出一个整数表示该密码的强度。 输入样例 输入样例1 abcd 输入样例2 ab123 输出样例 样例1输出: 1 样例2输出 2

Global site tag (gtag.js) - Google Analytics