JS如何判断文字是全角还是半角

JavaScript010

JS如何判断文字是全角还是半角,第1张

try.. <input type="text" id="txt"><input type="button" onclick="check(txt.value)" value="check"><script>function check(s) { str=s.replace(/[^\uff00-\uffff]/g,) if(str.length==0)alert("半角")else alert(有全角)} </script>发表者:postfix2var strtmp = new string()strtmp = "我们是全角字符。wo men shi ban jiao zi fu."for (var i=0 i<strtmp.length i++) { if (strtmp.charcodeat(i) > 128) window.alert("全角字符:" + strtmp.charat(i))else window.alert("半角字符:" + strtmp.charat(i))} <script> str="中文;a" alert(str.match(/[\u0000-\u00ff]/g)) //半角 alert(str.match(/[\u4e00-\u9fa5]/g)) //中文 alert(str.match(/[\uff00-\uffff]/g)) //全角 </script>只能输入全角 <input onkeyup="value=value.replace(/[^\uff00-\uffff]/g,)" onbeforepaste="clipboarddata.setdata(text,clipboarddata.getdata(text).replace(/[^\uff00-\uffff]/g,))">只能输入半角 <input onkeyup="value=value.replace(/[^\u0000-\u00ff]/g,)" onbeforepaste="clipboarddata.setdata(text,clipboarddata.getdata(text).replace(/[^\u0000-\u00ff]/g,))"> /************************************************************* 名称:issbccase 功能:判断字符串中是否存在全角字符串 参数:source,源字符串; 返回:是否存在全角字符,true或false *************************************************************/ function issbccase(source) { if (source=="") { return true} var reg=/^[\w\u4e00-\u9fa5\uf900-\ufa2d]*$/if (reg.test(source)) { return false} else { return true} }

var exp=/^(?:\w|-|\r|\n|[\u0100-\uFFFF])*$/i//姑且认为ascii以外字符全是全角,对汉字来说全覆盖,全角空格?是神马字符?用"【空格】".charCodeAt(0)获取unicode码后从范围中删除即可

console.log(exp.test("_azAZ\n010-189554\n好啊《书名号》?全角问号\n换行"))//true

console.log(exp.test("+"))//false

console.log(exp.test(" "))//false

wo men shi ban jiao zi fu.

for (var i=0 i<strtmp.length i++) {

if (strtmp.charcodeat(i)128)

window.alert(全角字符: + strtmp.charat(i))else

window.alert(半角字符: + strtmp.charat(i))}

发表者:wanghr100<script

str=中文;a

alert(str.match(/[\u0000-\u00ff]/g)) //半角

alert(str.match(/[\u4e00-\u9fa5]/g)) //中文

alert(str.match(/[\uff00-\uffff]/g)) //全角

</script

发表者:shqlsl

只能输入全角

<input onkeyup=value=value.replace(/[^\uff00-\uffff]/g,) onbeforepaste=clipboarddata.setdata(text,clipboarddata.getdata(text).replace(/[^\uff00-\uffff]/g,))

只能输入半角

<input onkeyup=value=value.replace(/[^\u0000-\u00ff]/g,) onbeforepaste=clipboarddata.setdata(text,clipboarddata.getdata(text).replace(/[^\u0000-\u00ff]/g,))

发表者:ghlfllz

/*************************************************************

名称:issbccase

功能:判断字符串中是否存在全角字符串

参数:source,源字符串;

返回:是否存在全角字符,true或false

*************************************************************/