草庐IT

regex_iterator

全部标签

JavaScript - 在 RegEx 中用 "\"替换 "/"字符的正确方法是什么

我在JavaScript中定义了一个函数来替换所有的-,_,@,#,$和\(它们是可能的分隔符)和/(有效分隔符)。我的目标是将任何字符串如"1394_ib_01#13568"转换为"1394/ib/01/13568"functionreplaceCharacters(input){pattern_string="-|_|@|#|$|\u005C";//usingcharacterUnicode//pattern_string="-|_|@|#|$|\";//usingoriginalcharacter//pattern_string="-|_|@|#|$|\\";//using"\\

javascript - 为什么 ES 6's Map.forEach iterate with ' value, key' 而不是 'key, value' ?

如MDN所示,Map的forEach回调被调用,先是值,然后是键。例如:map.forEach(function(value,key,map){...})似乎key,value比value,key更常见。即使是Mapconstructor需要一组[key,value]对。 最佳答案 这可能只是出于懒惰的缘故。大多数forEach循环只关心value本身。通过将它作为第一个参数提供,您可以构造一个只接受一个参数的函数:map.forEach(function(value){/*dosomethingwithvalue*/;})代替ma

javascript - (\/?) 在 regex/中的含义是 (\w+)([^>]*?) 冗余?

我认为这个正则表达式应该匹配一个html开始标记。varresults=html.match(/]*?)>/);我看到它应该首先捕获,但后来我很困惑这个捕获(\/?)完成。我的推理是否正确([^>]*?)>搜索除>以外的所有字符>=0次?如果是这样,为什么(\w+)抓捕有必要吗?不属于[^>]*?的范围吗 最佳答案 逐个标记:/开始正则表达式匹配文字(\/?)匹配0或1(?)文字/,由\转义(\w+)匹配一个或多个“单词字符”([^>]*?)懒惰*匹配零个或多个(*?)任何不是>的东西>匹配文字>/结束正则表达式懒惰地*-添加“?”

Javascript Regex 应该通过 .test() 但似乎失败了 - 为什么?

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。在javascript中测试我的正则表达式时,我似乎总是得到一个奇怪的结果。这是我的fiddle:http://jsfiddle.net/s5fYf/15/这取self正在构建的网络项目。我将一组验证对象传递到我的验证函数中,该函数遍历它们,根据值验证每个规则。如果一个为假,它应该停止循环并返回一个返回对象,该对象从失败的规则中获取消息和cssClass。问题是即使正则表达式测试通过,验证方法似乎也返回false,这应该是不可能的!所以我觉得我错

JavaScript REGEX 全部匹配并替换

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

javascript - 使用 RegEx 删除空标签

我想删除空标签,例如,这样:Thisisreditalic将被清理为:Thisisreditalic我在javascript中有这个RegEx,但它删除了空标签,但它也删除了这个:"italic"str=str.replace(//gim,"");我错过了什么? 最佳答案 您将“非空格”作为您的字符类,这意味着“italic”将匹配。正则表达式的前半部分将匹配“italic”,后半部分将匹配“”。(我用方括号来显示每个[\S]+匹配的内容。)改变这个://对此:/][^>]*>]+>/总的来说,您确实应该使用合适的HTML处理器,但

javascript - 在 ES6 之前的 Typescript 中实现 Iterator<T> 的推荐方法

这个问题在这里已经有了答案:typescript:makeclassobjectsiterable(3个答案)关闭5年前。我有一个项目,其中包含许多理想情况下会实现Iterable的类和/或Iterator接口(interface)。但是我似乎找不到这些接口(interface)的标准TypeScript定义(例如在typescript-collections或一些类似的包中)。我知道这些在ECMAScript6中通过Symbol.iterator有所标准化。机制,但我的目标是ECMAScript5,并且在可预见的future将保持不变。我能否以某种方式获得这些接口(interface

javascript - Apollo "Subscription field must return Async Iterable. Received: undefined"

我有一个触发channel事件“countIncr”的突变,但我没有看到事件的相应订阅与事件负载一起触发。更新:我已经对这篇文章进行了多次更新,现在我正在更改标题以更能代表我所在的位置。我收到graphqlPlayground错误"SubscriptionfieldmustreturnAsyncIterable.Received:undefined"我遇到问题的TGRstack复制:https://github.com/TGRstack/tgr-apollo-subscription-example-microservice/没有TGRstack的工作再现:https://github

javascript - RegExp 构造函数和 Regex 文字测试函数之间的区别?

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭6年前。我对这怎么可能感到困惑......varmatcher=newRegExp("d","gi");matcher.test(item)上面的代码包含以下值item="DouglasEnas"matcher=/d/gi然而,当我连续运行matcher.test函数时,我第一次运行时得到true,第二次运行时得到false。matcher.test(item)//truematcher.test(item)//false如果我使用正则表达式,例如/d/

JavaScript RegEx 排除某些单词/短语?

如何编写一个RegEx模式来测试一个字符串是否包含多个具有以下结构的子字符串:"cake.xxx"xxx是任何东西,但不是“奶酪”、“牛奶”或“黄油”。例如:“我有一个cake.honey和cake.egg”应该返回true,但是“我有一个蛋糕。**牛奶**和cake.egg”应该返回false。 最佳答案 这就是你想要的吗?^(?!.*cake\.(?:milk|butter)).*cake\.\w+.*查看hereonRegexr如果包含“cake.XXX”,则匹配完整行,但如果包含“cake.milk”或“cake.butte