javascript - 我需要什么正则表达式来检查一些非拉丁字符?

标签 javascript jquery regex

我正在检查一个字段是否为拉丁字符。

var foreignCharacters = $("#foreign_characters").val();
var rlatins = /[\u0000-\u007f]/;

if (rlatins.test(foreignCharacters)) {
  alert("This is Latin Characters");
} else {
  alert("This is non-latin Characters");    
}

这很好用,但我想更改它,所以当我输入任何非拉丁字符(例如汉字)以及一个空格(在我当前使用的范围内)时,它仍然会说它是非拉丁字符。

我怎样才能改变我必须做的正则表达式?

最佳答案

只测试是否存在非 ascii 字符,而不是测试是否存在 ascii 字符:

var foreignCharacters = $("#foreign_characters").val();
var rforeign = /[^\u0000-\u007f]/;

if (rforeign.test(foreignCharacters)) {
  alert("This is non-Latin Characters");
} else {
  alert("This is Latin Characters");    
}

关于javascript - 我需要什么正则表达式来检查一些非拉丁字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2550951/

相关文章:

jQuery 脚本文件加载两次

c# - 如何在Winforms RichTextBox中实现基本的语法高亮?

javascript - Vue.js 缺少 Angular 2 的哪些模块?

javascript - 如何在 React carousal 中为字母表添加动画效果?

javascript - getBoundingClientRect() 导致 javascript 崩溃?

javascript - 如何在下一个 js 中获取完整的浏览器 url,getServerSideProps

javascript - 移动设备上具有大型控件的响应式 PhotoSwipe

javascript - 如何获取没有对象编号的 json 对象?

java - 如果 - 字符后面只有空格,则正则表达式匹配失败

java - 正则表达式城市名称