草庐IT

REGEXP_SUBSTR

全部标签

javascript - 将变量传递给带有单词边界的 RegExp

我必须传递给变量的RegExp值并指向一个单词边界。我有一个字符串要检查它是否包含变量值。我不知道如何将正则表达式作为变量值和单词边界属性传递给regexp。所以像这样:varsa="Sample";varre=newRegExp(/\b/+sa);alert(re.test("Sampletext"));我尝试了一些方法来解决问题,但仍然无法解决:( 最佳答案 使用这个:re=newRegExp("\\b"+sa)正如@RobW提到的,您可能需要转义sa。看这个:IsthereaRegExp.escapefunctioninJav

javascript - RegExp 和 String 组合导致 Chrome 崩溃

我有以下RegExp来验证电子邮件地址:^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$在基本电子邮件上运行它效果很好:/^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/.test('dave@the-taylors.org');但是在长字符串上运行它会使Chrome崩溃:/^[A-Za-z0-9](([_\.\

javascript - 通过 RegExp 构造函数创建的对象匹配 Javascript 正则表达式中的空格

请查看这段代码。为什么通过不同方式(通过/regex/文字和通过RegExp构造函数)创建相同的正则表达式会导致不同的结果?为什么第二个模式不匹配str中的空格?varstr="";varpat1=/\s/;document.writeln(pat1.test(str));//shows"true"varpat2=newRegExp("\s");document.writeln(pat2.test(str));//shows"false"无法在任何地方找到我的问题的答案。谢谢 最佳答案 您需要转义反斜杠,因为它在字符串中:varpa

javascript - RegExp : I want to remove unnecessary words in the Sentence. 我该怎么做?

我有一个句子,我想从中删除一些词。如果我有:"jQueryisaUniquelanguage"和一个名为garbageStrings的数组:vargarbageStrings=['of','the',"in","on","at","to","a","is"];我想去掉句子中的“is”和“a”。但是如果我使用这个:/Thisstatementisinsideaforloop.我正在循环整个句子并在garbageStrings/中找到匹配项varregexp=newRegExp(garbageStrings[i]);字符串将变成“jQueryUniquelnguge”请注意,语言中的“a”

javascript - 具有负值的 substr() 在 IE 中不起作用

编辑:我更改了标题,因为该问题与IEimage.load()触发无关-我的substr()不工作(参见已接受的答案)。有很多帖子是关于确保在分配img.src之前定义您的onload处理程序,以确保在图像首先从缓存加载的情况下onload处理程序就位。这在我的代码中似乎不是问题,因为这正是我所做的。请注意,此脚本适用于所有其他浏览器,但IE8及更低版本不会触发onload内联函数。vari=lastSlideIndex||1;while(imagesQueuedlastImageIndex)lastImageIndex=this.arrayIndex;triggerSlideshow(

javascript - 如何在 Javascript 中 .substr() 一个整数

正如标题所说,哪个函数会给我一个类似于.substr()的结果,但只针对整数?谢谢!更新:这是不起作用的:if($(#itemname).val()=="NotListed"){varrandVal=Math.random()*10238946;varnewVal=randVal.toString().substr(0,4);$("#js_itemid").val(randVal);$("#js_price").val("199.99");} 最佳答案 那...呢varinteger=1234567;varsubStr=intege

javascript - RegExp.test 不工作?

我试图在javascript中使用Regex.test验证年份,但无法弄清楚为什么它返回false。varregEx=newRegExp("^(19|20)[\d]{2,2}$");regEx.test(inputValue)对于输入值1981、2007返回false谢谢 最佳答案 当您使用字符串表达式创建RegExp对象时,您需要加倍反斜杠以便它们正确转义。另外[\d]{2,2}可以简化为\d\d:varregEx=newRegExp("^(19|20)\\d\\d$");或者更好的是使用正则表达式文字来避免双反斜杠:varreg

javascript - require.context : inline RegExp works, var RegExp 不

如果声明了SPECEnv,我将尝试有条件地加载我的测试:varcontext=nullif(process.env.SPEC){context=require.context('./tests',true,/.*?SearchInput.*/);}context.keys().forEach(context);这是完美的工作。现在如果我这样做varcontext=nullif(process.env.SPEC){varc=/.*?SearchInput.*/;context=require.context('./tests',true,c);}context.keys().forEac

javascript - 为什么不推荐使用 String.prototype.substr()?

ECMAScript标准中提到了它here那:...ThesefeaturesarenotconsideredpartofthecoreECMAScriptlanguage.ProgrammersshouldnotuseorassumetheexistenceofthesefeaturesandbehaviourswhenwritingnewECMAScriptcode.ECMAScriptimplementationsarediscouragedfromimplementingthesefeaturesunlesstheimplementationispartofawebbrowse

javascript - 使用 Javascript RegExp 用迭代数字替换每个匹配项

我想用一个迭代数字替换字符串中的空行例如替换字符串:"MyfirstlineMysecondlineMythirdline"与"1Myfirstline2Mysecondline3Mythirdline"我可以匹配和替换这些行使用varnewstring=TestVar.replace(/(^|\n\n)/g,"\nhello\n");但是,我正在努力添加一个函数来为每个函数添加一个迭代数。你能帮忙吗?TIA,Gids 最佳答案 是的,您可以在javascript中做到这一点。您只需将一个函数作为第二个参数传递给replace。va