JavaScript/Angular RegEx 只允许粘贴字母数字

标签 javascript regex angularjs

我想要做的是,当用户粘贴一个大字符串时,我想从输入的文本中提取字母数字值。

我用纯 JavaScript 来做这件事,但 Angular 答案值得赞赏。

到目前为止,我有以下内容:

document.getElementById("paste").addEventListener("keyup",function(){
var inText= "Thank you for contacting us your code is abd123XYZ we will help you shortly ";

 reg = /^[a-z0-9]+$/i;
 var wordsArray=inText.split(" ");

 wordsArray.forEach(function(element){
   //   what to do here to only get abd123XYZ 
 });//foreach

});//keyup

最佳答案

试试这个:

var reg = /^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$/;
angular.forEach(inText.split(" "),function(d){
         if(reg.test(d))
         {
            console.log(d);
         }
});

Demo

关于JavaScript/Angular RegEx 只允许粘贴字母数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31878337/

相关文章:

正则表达式从最后一次出现的字符串开始

Python。替换 html 标签之间的文本

javascript - 如何使用 excel-builder.js 导出 Excel 文件

angularjs - 自动 - 在 Sublime Text 3 中导入 .ts 组件

javascript - 最后的 'SetItem'不保存,刷新页面时清除

javascript - 合并从 Ajax 调用接收到的对象

r - Tidyr 与可选组分开

javascript - React JS 'this' 未按预期工作

javascript - 延迟加载模型中的关联

javascript - 在 Java 中尝试从 AngularJS 尝试时,PUT/POST Rest api 调用不起作用