我需要禁止在输入字段中写入全角日文字符, 半宽是可以的,除了全宽之外,任何其他符号都可以。
此处https://gist.github.com/terrancesnyder/1345094 我找到全宽度片假名(zenkaku全角)的正则表达式就够了吗? 目前我的代码看起来像这样
if ( /[ァ-ヶ]/.test("カナ") ) {
console.log('full width');
}else{
console.log('not full width');
}
我不熟悉日语,所以我也不知道还有什么我要检查的,我的意思是他们有片假名,平假名等等,这就是我为什么会这样做的原因。不确定我的剧本是否足够好,请让我知道您的想法
答案 0 :(得分:1)
日本人使用了很多这样的角色 e.g。
使用简单的正则表达式无法检测到它。 字符宽度的变化也适用于其他亚洲语言。 在Unicode中,定义为"east asian width"。
Unicodedata module of python
通常用于确定“东亚宽度”。
在JavaScript的标准函数中不存在类似的东西。
但是,有一些npm modules。
如果使用this East Asian Width
module,可以这样确定。
var eaw = require('eastasianwidth');
function isHalfWidth(c){ return eaw.length(c) == 1; }
isHalfWidth("あ")
// -> false
isHalfWidth("ア")
// -> true
isHalfWidth("A")
// -> false
isHalfWidth("A")
/// -> true
答案 1 :(得分:0)
mbStrWidth('过&#39); //返回2 --->全屏宽度 mbStrWidth('サ&#39); //返回1 --->半宽
"remote: HTTP Basic: Access denied
fatal: Authentication failed for'https://gitlab.com/mygitproject/'"