草庐IT

javascript - 多个正则表达式替换

我对正则表达式感到困惑我认为当涉及到这些可怕的代码时我有阅读障碍......无论如何,必须有一种更简单的方法来做到这一点-(即在一行中列出一组替换实例),任何人?提前致谢。functionclean(string){string=string.replace(/\@~rb~@/g,'').replace(/}/g,'@~rb~@');string=string.replace(/\@~lb~@/g,'').replace(/{/g,'@~lb~@');string=string.replace(/\@~qu~@/g,'').replace(/\"/g,'@~qu~@');string=

javascript - RegExp 数字范围(1 到 36)

我搜索了很多,找不到这个RegExp的解决方案(我不得不说我在Reg.Expressions方面不是很有经验)。我想测试一个介于1和36之间的数字,不包括0和37及以上。到目前为止我得到的几乎可以工作(它不接受17、18、19、27、28、29)...^[1-9]{1}$|^[1-3]{1}[0-6]{1}$|^36$;有人可以帮帮我吗? 最佳答案 你知道\d,对吧?^([1-9]|[12]\d|3[0-6])$在控制台试试这个:functiontest(){for(vari=0;i=1&&i");}}

Javascript:将具有匹配项的函数传递给替换(regex,func(arg))不起作用

根据该站点,以下替换方法应该有效,但我持怀疑态度。http://www.bennadel.com/blog/55-Using-Methods-in-Javascript-Replace-Method.htm我的代码如下:text=text.replace(newRegex(...),match($1)//$..anymatchargumentpassedtotheuserfunction'match',//whichitselfinvokesauserfunction);我使用的是Chrome14,没有传递给函数match的任何参数?更新:使用时有效text.replace(/.../

javascript - 如何在 javascript 中搜索替换为正则表达式并保持大小写不变

这是我的问题。我有一个混合大小写的字符串。我想不分大小写地进行搜索,然后用匹配项两边的一些字符替换匹配项。例如:vars1="abC...ABc..aBC....abc...ABC";vars2=s.replace(/somecleverregexforabc/g,"#"+originalabcmatch+"#");s2中的结果应该是这样的:"#abC#...#ABc#..#aBC#....#abc#...#ABC#"这可以用正则表达式来完成吗?如果是,怎么办? 最佳答案 这可以使用正则表达式替换的回调函数来完成。vars1="ab

javascript - 为什么 Angularjs ng-pattern 不能使用以下正则表达式?

出于某种原因,初始化值没有出现在该字段中,但没有ng-pattern的第二个字段确实有效。有什么想法吗?angular.module('app',[]).controller('MainCtrl',function($scope){$scope.widget={title:'abc',title2:'abc'};});input1:{{widget.title}}input2:{{widget.title2}}这是fiddlehttp://jsfiddle.net/wkzab/1/ 最佳答案 我也遇到了同样的问题。找到了执行此操作的

javascript - 改进用于解析 YouTube/Vimeo URL 的正则表达式

我创建了一个函数(用JavaScript),它从YouTube或Vimeo获取一个URL。它计算出该特定视频的提供者和ID(演示:http://jsfiddle.net/csjwf/)。functionparseVideoURL(url){varprovider=url.match(/http:\/\/(:?www.)?(\w*)/)[2],id;if(provider=="youtube"){id=url.match(/http:\/\/(?:www.)?(\w*).com\/.*v=(\w*)/)[2];}elseif(provider=="vimeo"){id=url.match

javascript - 脚本中只允许数字和点

我正在使用此javascript来限制用户只能键入数字,并且只能键入一个点作为小数点分隔符。functionfun_AllowOnlyAmountAndDot(txt){if(event.keyCode>47&&event.keyCode=1&&event.keyCode==46){event.keyCode=0;//alert("Onlyonedecimalpointisallowed!!");returnfalse;}if(count==1){varlastdigits=amount.substring(amount.indexOf(".")+1,amount.length);if

JavaScript:好的部分;为什么前瞻不好?

我正在阅读DouglasCrockfordsJavascript:TheGoodParts,我刚刚完成了正则表达式章节。在本章中,他称JavaScript的\b、positivelookahead(?=)和negativelookahead(?!)“不是一个好东西部分”他解释了\b不好的原因(它使用\w进行词边界查找,而\w对任何使用unicode字符的语言),这对我来说是一个很好的理由。不幸的是,正面和负面前瞻性不好的原因被排除在外,我也想不出一个。MasteringRegularExpressions向我展示了lookahead的强大功能(当然还解释了它带来的问题),但我真的想不出

javascript - 是否存在 "[^xy]"不等于 "(?!x|y)."的情况?

我正在开发我自己的JavaScript库来支持新的元字符和正则表达式的特性,我想找到[^xy]不等同于的情况(?!x).(或更具体地说(?:(?!x|y).))。拿例子文字:"abc\n"假设我想模拟Perl正则表达式:/\A.{3}\Z/s使用单行标志,JavaScript正则表达式应等效于:/^[\s\S]{3}\n*$(?!\s)/(\A变为^,.变为[\s\S],\Z变为\n*$(?!\s))现在,/^.{3}$/会失败,但是/^[\s\S]{3}\n*$(?!\s)/将捕获“abcabc”(与Perl正则表达式相同)由于\Z包含的不仅仅是一个元字符,因此模拟[^\Z]似乎更加

javascript - 正则表达式中的尖括号(< 或 >)是否特殊?

我正在尝试让正则表达式接受作为我的外部分隔符以获取它们之间的所有内容。这样的内容应该捕获。我是否必须转义字符或其他字符?由我的脚本生成的正则表达式:/)]*>/g文件中的代码:data.method.highlight=function(){varx=data.syntax,text=data.$.span.html();for(vari=0,len=x.length;i'+match+'';});data.$.span.html(text);}}; 最佳答案 都不是也不>是正则表达式中的元字符。这对我有用:'and'.match(