- 浏览: 2870028 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (1173)
- 名言警句 (5)
- 心情随笔 (50)
- 数据库 (57)
- Java基础 (241)
- J2EE框架 (91)
- 数据结构 (12)
- 程序设计 (21)
- WEB技术 (128)
- 网络日志 (12)
- IT资讯 (247)
- linux (64)
- solaris (2)
- 其它 (143)
- WebService (4)
- 日语学习 (2)
- 机器人 (5)
- Android (5)
- cgywin (3)
- Game (1)
- DWR (1)
- spring (8)
- canvas (1)
- Guava (3)
- Modbus (5)
- 测试 (6)
- mongodb (9)
- Quartz (2)
- Cron (1)
- windows (2)
- 持续集成 (1)
- bootstrap (3)
- 结对编程 (1)
- nodejs (1)
- Netty (1)
- 安全 (3)
- webstorm (2)
- sparkline (1)
- Job (1)
- git (3)
- Maven (3)
- knockout (5)
- jquery (1)
- bower (1)
- docker (1)
- confluence (4)
- wiki (1)
- GoogleMap (1)
- jekyll (10)
- ruby (2)
- npm (3)
- browserify (1)
- gulp (3)
- openwrt (1)
- discuz (3)
- 输入法 (1)
- JPA (1)
- eclipse (2)
- IntelliJ (1)
- css (1)
- 虚拟机 (1)
- 操作系统 (1)
- azkaban (2)
- scrum (1)
最新评论
-
pangxiea_:
你好, 想请问一下 Linux下 这么使用rxtxcomm 在 ...
使用Java进行串口通信 -
abababudei:
请教一下,这个您是怎么解决的:/dev/ttyS2enteri ...
Java应用程序的MODBUS通讯 -
xuniverse:
hannibal005 写道楼主,我问下 request.se ...
用javascript与java进行RSA加密与解密 -
atxkm:
找了一下午,终于找到了
gulp 拷贝文件时如何移除文件目录结构 -
kalogen:
gtczr 写道非常感谢,经过我自己的修改,已经完美实现。发出 ...
用javascript与java进行RSA加密与解密
摘要:我们在用程序处理文本的过程中,经常碰到中英文字符串的问题,比如说我们要得到文本编辑器中一段中英文混合文字的长度从而进行数据验证,有的时候我们为了实现某些特殊的效果需要对文字进行截取,这时候我们就用到了中英文混合文字的截取问题
我们分两步来看一下这个问题
x00-\xff 代表非汉字编码
一个汉字代表两个字节,所以那样了,不过应该是
return this.replace(/[^\0xa1-\0xff]/g,"**").length;
运行示例程序会弹出一个对话框显示13
用法: var a = "gdfghrtfhrjtyjtukyukyk";a.sub(10);
上面的程序不难理解 这里不作解释了
我们分两步来看一下这个问题
js中英文字符串长度
因为一个中文字符=两个英文字符的长度,所以我们采用一个办法将一个汉字字符转化为两个字节的英文字符 实现代码如下
js 代码
- <script>
- String.prototype.len=function()
- {
- return this.replace(/[^\x00-\xff]/g,"rr").length;
- }
- var str="bdkey的字符串";
- alert(str.len()); //5+8=13
- </script>
一个汉字代表两个字节,所以那样了,不过应该是
return this.replace(/[^\0xa1-\0xff]/g,"**").length;
运行示例程序会弹出一个对话框显示13
既然有了长度的判断 那么我们再来看一下中英文字符串截取的问题:
看下面一段程序:
js 代码
- String.prototype.sub = function(n) {
- var r = /[^\x00-\xff]/g;
- if(this.replace(r, "mm").length <= n) return this;
- // n = n - 3;
- var m = Math.floor(n/2);
- for(var i=m; i<this.length; i++) {
- if(this.substr(0, i).replace(r, "mm").length>=n) {
- return this.substr(0, i) +"..."; }
- } return this;
- };
上面的程序不难理解 这里不作解释了
发表评论
-
30个你必须熟记的CSS选择器
2015-06-27 08:44 1770你学会了基本的id,class类选择器和descendant ... -
40 个超棒的免费 Bootstrap HTML5 网站模板
2015-04-11 16:12 2828Bootstrap 是快速开发Web应用程序的前端工具包。它 ... -
必须记住的 30 类 CSS 选择器
2014-12-30 08:56 1002大概大家读知道`id`,`class`以及`descenda ... -
如何防止google map 加载Roboto字体
2014-12-26 13:16 867思路是在window.onload中当检测到加载Roboto ... -
JavaScript Equality Table
2014-12-09 16:17 1862Tables displaying the issue: ... -
WebStorm快捷键收集
2014-11-25 10:40 30061、webstorm快捷键: IntelliJ-Idea ... -
webstorm 常用快捷键
2014-08-25 15:58 944常用快捷键 Ctrl+/ 或 Ctrl+Shift+/ ... -
how to change bower components folder
2014-08-25 09:26 7731. create the file bower.json ... -
程序员应该知道的 13 个设计技巧
2014-07-14 09:34 739开发你的美感 … 我最喜欢的站点是: a ... -
tomcat7中tomcat-users.xml配置
2014-04-26 15:48 711将以下代码加入tomcat-users.xml中,即可登录t ... -
tomcat-maven-plugin的使用
2014-03-04 10:52 881环境: Ubuntu 8.10, tomcat6, ma ... -
Jsp动态显示服务器时间
2013-12-31 13:16 1084<script language=" ... -
前端工程与性能优化(下):静态资源管理与模板框架
2013-09-25 08:57 984本系列文章从一个全新的视角来思考web性能优化与前端工程之间 ... -
前端工程与性能优化(上):静态资源版本更新与缓存
2013-09-20 09:35 973每个参与过开发企业级 ... -
Handy and Useful jQuery Snippets for Developers
2013-09-18 15:43 805jQuery is a cross browser Java ... -
11 个用来创建图形和图表的 JavaScript 工具包
2013-08-13 07:00 1336Aristochart DEMO || Download ... -
Jive 论坛 license破解
2013-08-03 13:27 13271. 找到文件 \admin\global.jspf 注释 ... -
2012年度最佳Web前端开发工具和框架
2013-01-10 10:52 17322012年,Web 开发领域继续在快速的发展,HTML5 ... -
为网页设计师准备的 10 个色彩方案生成器
2012-02-22 23:01 1179Pictaculous ColorExplo ... -
13个最常用的CSS和HTML快速开发工具
2012-02-21 08:18 12321)CleverCSS CleverCSS ...
相关推荐
本文将详细介绍一个专门用于处理中文字符串截取的JavaScript函数,该函数能够根据字符的实际编码长度来精确控制截取的长度。 #### 二、关键概念解析 ##### 2.1 字符串截取 字符串截取是指从一个较长的字符串中...
//不分中英文按字符串长度循环每个字符截取换行 这个是隔10个字符换行一次 String psStr="asdfghjklzxcvbnmzxcvbnmsdfghaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbb"; String aa=""; String bb=""; for (int i...
本文将探讨在JavaScript中如何使用substring()和substr()方法截取字符串,并特别针对中英文混合的字符串提供解决方案。...本文提供的代码和方法可以帮助开发者解决在JavaScript中处理字符串截取时遇到的常见问题。
在JavaScript中,处理中英文混合的字符串截取是一项常见的任务,尤其在网页开发中,比如显示摘要、控制输入长度等场景。由于JavaScript的内置方法`String.prototype.length`只能计算Unicode字符的数量,对于中文字符...
本文实例讲述了C#区分中英文按照指定长度截取字符串的.../// 截取文本,区分中英文字符,中文算两个长度,英文算一个长度 /// /// 待截取的字符串 /// 需计算长度的字符串 /// <returns>string public static string G
总之,JavaScript中的字符串截取和处理是一项常见的任务,通过`cutString`函数,我们可以有效地控制字符串长度并添加省略号,以适应各种界面显示的需求。在实际应用中,我们可以根据具体需求调整和优化这个函数,以...
1. 字符串长度计算:在JavaScript中,一个中文字符通常由三个字节组成,而英文字符只有一个字节。因此,需要一个函数来计算字符串的实际长度。这里的GetLength函数就扮演了这个角色,它通过遍历字符串中的每一个字符...
首先,文章标题《js截取中英文字符串、标点符号无乱码示例解读》和描述《主要介绍了如何js截取中英文字符串、标点符号无乱码,需要的朋友可以参考下》为我们提供了关键信息:这篇文章将向我们展示如何使用JavaScript...
- **字符串截取**:指从原始字符串中提取出一部分作为新的字符串。 - **字节与字符**:在不同的编码方式下,一个字符可能占用不同的字节数。例如,在 UTF-8 编码下,英文字符通常占用 1 字节,而中文字符则占用 3 ...
综上所述,通过理解和实现JavaScript中关于处理字符串长度的函数,可以有效地解决在Web开发中遇到的文本处理问题。正确地处理单字节和双字节字符,不仅可以提升程序的健壮性,还可以为用户提供更好的阅读体验。
在JavaScript中,对`textarea`元素进行输入字符串长度限制是一个常见的需求,特别是在处理用户输入时,需要确保数据格式的正确性。在HTML中,`textarea`控件不像`input[type="text"]`那样可以直接通过`maxlength`...
通过以上的知识点,我们可以了解到按字节截取字符串在JavaScript编程中是一个重要的应用场景,特别是在处理中文等多字节字符时,它能够保证字符串截取的正确性和准确性。提供的代码示例和方法对处理类似的字符串操作...
总结上述内容,我们了解到在处理字符串长度时,特别是涉及多字节字符时,直接以字符长度作为限制条件可能会出现错误。正确的方法是首先将输入的字符串按照编码规则进行转换,计算出实际字节数,然后进行比较和截取...
在JavaScript中,字符串操作是日常开发中不可或缺的部分,而字符串的截取则是字符串操作中的基础功能。...在实际应用中,可以根据具体情况选择使用这些方法中的一种或多种组合,以达到预期的字符串截取效果。
在没有特殊处理的情况下,如果要截取的字符串长度设定为5,使用`substr`方法截取英文字符串"***"时,结果是"12345",而对于中文字符串"一二三四五六七八九零",使用同样长度截取结果会变成"一二三四五",显然,中文...
以下是一个针对中文字符串截取的JS函数代码实现: 首先,我们需要一个计算字符串长度的函数,这个函数不仅要考虑英文字符,还要考虑中文字符。`strLen`函数通过遍历字符串的每个字符,如果字符的Unicode编码大于255...
2. **截取字符串至指定字节数**:如果字符串长度超过指定字节数,则进行截取。 3. **截取字符串时保证 URL 的完整性**:在截取过程中检查是否包含 URL,并确保 URL 的完整性。 #### 实现细节 ##### 方法一:计算...