草庐IT

javascript - 用连字符和/或撇号匹配单词的正则表达式

我正在寻找一个正则表达式来匹配带有连字符和/或撇号的单词。到目前为止,我有:(\w+([-'])(\w+)?[']?(\w+))这在大多数情况下都有效,但如果有一个撇号然后是一个连字符,例如“qu'est-ce”,它就不会匹配。我可以附加更多可选值,但也许还有另一种更有效的方法?我尝试匹配的一些示例:Mary's、High-school、'tis、Chambers'、Qu'est-ce。 最佳答案 使用这个模式(?=\S*['-])([a-zA-Z'-]+)Demo(?=#Look-Ahead\S#*#(zeroormore)(gr

Javascript::如何将关联数组的键获取到数组变量?

让我们有一个这样的关联数组:varaArray={};aArray.id='test';aArray['x1']=[1,2,3];aArray['stackoverflow']='What\'sup?';aArray['x2']=[4,5,6];varkeys=[];for(varkeyinaArray){if(aArray.hasOwnProperty(key)){keys.push(key);}}console.log(keys);有没有简单/快捷的方法如何在没有循环的情况下获取数组变量的键数组?如果是这样,另外,可以将一些正则表达式应用于键列表以获取匹配这种模式的键(假设/^x/

javascript - 在 Javascript 字符串中检测俄语/西里尔字母?

我正在尝试检测字符串是否包含俄语(西里尔字母)字符。我正在使用这段代码:term.match(/[\wа-я]+/ig);但它不起作用——或者实际上它只是按原样返回字符串。有人可以帮助编写正确的代码吗?谢谢! 最佳答案 使用模式/[\u0400-\u04FF]/覆盖更多西里尔字符://http://jrgraphix.net/r/Unicode/0400-04FFconstcyrillicPattern=/^[\u0400-\u04FF]+$/;console.log('Привіт:',cyrillicPattern.test('

javascript - 正则表达式匹配特定长度的特定数字组?

我找到了这个:Regextomatchdigitsofspecificlength但它谈论的是Python。我希望能够获得一组特定长度的随机数。因此,如果我有167691#15316243,它将匹配15316243。我不确定如何实现。现在我有newRegExp('[0-9]+',"g");可以很好地匹配一组数字,但现在我意识到有时我会有超过一组,我只想要一组八个数字。 最佳答案 [0-9]+-Matchesoneormorenumbers[0-9]{8}-Matchesexactly8numbers.[0-9]{8,10}-Matc

javascript - val.replace(/[^a-zA-Z_-0-9]/g, '' ) 产生 SyntaxError : invalid range in character class

我需要替换所有与a-zA-Z_-0-9范围不匹配的字符。所以我做了val.replace(/[^a-zA-Z_-0-9]/g,'')但得到了错误。我怎么能咬这个?谢谢 最佳答案 如果要在字符类中包含减号“-”,则必须将其放在范围末尾:val.replace(/[^a-zA-Z_0-9-]/g,'') 关于javascript-val.replace(/[^a-zA-Z_-0-9]/g,'')产生SyntaxError:invalidrangeincharacterclass,我们在Sta

javascript - 检查文本框是否仅包含数字

如何检查文本框是否只包含数字?在谷歌搜索时我遇到了这个。但我想知道isNumeric是否可以用于此目的,或者是否有更简单的方法来检查文本框是否具有数值。varquery=$('#myText').val();if(parseFloat(query)==NaN){alert("queryisastring");}else{alert("queryisnumeric");} 最佳答案 您可以使用输入和正则表达式上的change事件检查用户是否只输入了数字。$(document).ready(function(){$('#myText')

javascript - 了解使用 JavaScript 进行电子邮件验证

我是JavaScript的新手,在互联网上找到了这个验证给定电子邮件的JavaScript代码(代码没有问题)-EmailValidationfunctioncheckEmail(emailId){if(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(emailId)){document.write("Youhaveenteredvalidemail.");returntrue;}returnfalse;}functionValidateEmail(){varemailID=document.form.email;if((ema

javascript - 如何获得位于 2 个引号之间的子字符串?

我有一个看起来像这样的字符串:“你需要的词是‘你好’”。将“hello”(但不带引号)放入javascript变量的最佳方法是什么?我想这样做的方法是使用正则表达式(我对此知之甚少)?感谢任何帮助! 最佳答案 使用match():>vars="thewordyouneedis'hello'";>s.match(/'([^']+)'/)[1];"hello"这将匹配开始的',然后是除'之外的任何内容,然后是结束的',将其间的所有内容存储在第一个捕获组。 关于javascript-如何获得位

JavaScript REGEX 全部匹配并替换

我正在用javascript编写一个简单的模板函数。我的模板加载正常,现在是我需要将内容解析为占位符的部分。一个模板的例子是:{{name}}is{{age}}这些是动态的,所以理想情况下我想使用正则表达式来根据它们的名称匹配和替换占位符,例如{{name}}将被加载到javascript数组中的内容替换,例如data.namedata.age这是我的正则表达式:/\{\{(.*?)\}\}/这工作正常,但经过大量搜索后,我无法找到遍历每个正则表达式匹配项的定义方法。提前致谢 最佳答案 好吧,首先您需要正则表达式上的g标志。这告诉J

Javascript 和正则表达式 : remove space after the last word in a string

我有一个这样的字符串:varstr='aaaaaa,bbbbbb,ccccc,ddddddd,eeeeee';我的目标是删除字符串中的最后一个空格。我会用,str.split(0,1);但是如果字符串中最后一个字符后没有空格,这将删除字符串的最后一个字符。我想用str.replace("regex",'');我是RegEx的初学者,感谢任何帮助。非常感谢。 最佳答案 在谷歌上搜索“javascripttrim”,您会发现许多不同的解决方案。这是一个简单的例子:trimmedstr=str.replace(/\s+$/,'');