输入框中限制汉字字数
在CSDN上常看到有人问起有关限制汉字输入的问题,本人不才,写一下自己的见解,当然还有比这更好的方法。望多多指教。
开发语言:JavaScript
思想:先用正则表达式判断是否汉字,如是的,则用空字符取代,再用取代前字符
长度减去取代后长度,就是汉字的字数
代码:
c#:
开发语言:JavaScript
思想:先用正则表达式判断是否汉字,如是的,则用空字符取代,再用取代前字符
长度减去取代后长度,就是汉字的字数
代码:
1
<script language="javascript">
2
function ShowLen()
3
{
4
var s="1.4 整数不能大于iMax";
5
var s1=s.replace(/[\u4e00-\u9fa5]/g,"");
6
alert(s.length-s1.length);
7
8
}
9
</script>
统计字符串中的汉字的字数,也可以是其它字符之类![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
4
![](/Images/OutliningIndicators/InBlock.gif)
5
![](/Images/OutliningIndicators/InBlock.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
9
![](/Images/OutliningIndicators/None.gif)
c#:
1
string sInput, sRegex;
2
// The string to search.
3
sInput = "1.4 整数2321不能大于iMax";
4
// A very simple regular expression.
5
sRegex = "[\u4e00-\u9fa5]";
6
Regex r = new Regex(sRegex);
7
Match m=r.Match (sInput);
8
int i=0;
9
while (m.Success )
10
{
11
i++;
12
m=m.NextMatch ();
13
}
14
this.Response .Write (i.ToString ());
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/InBlock.gif)
13
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
14
![](/Images/OutliningIndicators/None.gif)