草庐IT

分隔器

全部标签

javascript - 匹配逗号分隔列表中未被单引号或双引号括起来的项目

我想匹配逗号分隔列表中的任何文本实例。为此,以下正则表达式非常有用:/[^,]+/g(Regex101demo)。问题是我想忽略包含在单引号或双引号中的任何逗号,而且我不确定如何扩展上述选择器以允许我这样做。这是一个示例字符串:abcd,efgh,ij"k,l",mnop,'q,rs't我想匹配五个文本block或匹配四个相关的逗号(这样我就可以使用split()而不是匹配():abcdefghij"k,l"mnop'q,rs'或者:abcd,efgh,ij"k,l",mnop,'q,rs't^^^^我该怎么做?存在三个相关问题,但它们都不能同时满足JavaScript中的'和":Re

javascript - 使用正则表达式以逗号分隔但不在括号内

这个问题在这里已经有了答案:SplitstringinJavaScriptusingRegExpignoringthedelimiterinsidebrackets(2个答案)关闭5年前。我想用逗号分隔一个字符串,但当它们在方括号内时就不行。例如:"[1,'15',[false]],[[],'sup']"会split成["[1,'15',[false]]","[[],'sup']"]我已经为我的正则表达式尝试了/\,(?=(.*\[.*\])*.*\]{1})/,我的逻辑是匹配逗号后跟偶数个“[]”,中间和外部的任何字符后跟一个“]”。

javascript - Javascript 中的 CSV 分隔符自动检测

如何从Javascript/NodeJS中的字符串中检测CSV分隔符?什么是标准算法?请注意,分隔符并不总是逗号。最常见的分隔符是;、、和\t(制表符)。 最佳答案 获取可能分隔符的可能算法非常简单,并假设数据格式正确:对于每个分隔符,对于每一行,用分隔符分割行,检查长度。如果其长度不等于最后一行的长度,则这不是有效的分隔符。概念验证(不处理带引号的字段):functionguessDelimiters(text,possibleDelimiters){returnpossibleDelimiters.filter(weedOut)

javascript - 我可以在javascript中使用大括号来分隔代码段吗

这是一些示例代码。我想知道是否有任何理由不应该这样做。//somecodevarx="hello";{vary="nice";functionmyfunction(){//dostuff...}}我看到这样做的好处是能够以block的形式组织代码段,并让自动格式化程序做一些工作......在我的测试中,{}在创建var或函数时不会影响作用域。 最佳答案 这个答案是在早期JavaScript实现的时候写的。虽然适用于var的相同规则,ECMAScript2015(akaES6)介绍letvariabledeclarationstate

javascript - javascript中用逗号分隔的数字到整数数组的字符串

我正在将以逗号分隔的数字字符串转换为整数数组,例如varstring="1,2,3,4";vararray=string.replace(/,+/g,",").split(",").map(Number);它返回array=[1,2,3,4];但是当,varstring="";vararray=string.replace(/,+/g,",").split(",").map(Number);它返回array=[0];我期待它返回array=[];谁能说说为什么会这样。 最佳答案 我会推荐这个:vararray;if(string.l

javascript - 从数字字符串中删除千位分隔符的正则表达式?

我有包含千位分隔符的字符串,但是没有字符串到数字函数想要正确使用它(使用JavaScript)。我正在考虑通过剥离所有千位分隔符来“准备”字符串,保留任何其他内容并让Number/parseInt/parseFloat函数(我对他们的其他行为感到满意)来决定其余的。但似乎我不知道哪个RegExp可以做到这一点!也欢迎更好的想法!更新:抱歉,答案让我明白了这个问题是多么糟糕。我正在努力实现的目标是:1)仅在有千位分隔符时去除千位分隔符,但2)不要过多干扰原始字符串,因此在无效数字的情况下我会得到NaN。更多更新:JavaScript仅限于英语语言环境进行解析,因此为简单起见,假设千位分隔

javascript - 正则表达式用逗号分隔千位并保留两位小数

我最近在回答另一个StackOverflow问题时想出了这段代码。基本上,在模糊的情况下,此代码将正确地以逗号分隔千位并将小数保留为两位数(就像美元的书写方式[7,745.56])。我想知道是否有更简洁的方法使用正则表达式来分隔和删除过多的小数位。我最近用我最近的尝试更新了这篇文章。使用正则表达式是否有更好的方法?输入->目标输出7456->7,45645345->45,34525.23523534->25.233333.239->3,333.23234.99->234.992300.99->2,300.9923123123123.22->23,123,123,123.22当前正则表达

javascript - 将字符串分隔符更改为反引号 : possible impact?

引入ES6templatestrings由反引号`分隔。在哪些情况下用反引号替换字符串周围的单引号'或双引号"会产生不同的结果,否则是不安全的?作为操作的一部分执行代码内现有反引号的转义。//beforevarmessage="Displaybacktick`onscreen";//aftervarmessage=`Displaybacktick\`onscreen`;我知道任何包含${...}的字符串都会失败,因为它会被(错误)解释为占位符。还有其他相关模式吗?上下文:这是针对developmentofaJScompressiontool的自动处理输入代码。后者及其包含的字符串是用户

javascript - 在单个分隔符出现时拆分

我有这样的字符串A_B_C_DA_B___C_D___可以在字符串中的任意位置。在任何单个_而不是___处拆分它们的最简单方法是什么? 最佳答案 >>>"A_B_C_D".match(/(?:[^_]|_{2,})+/g)["A","B","C","D"]>>>"A_B___C_D".match(/(?:[^_]|_{2,})+/g)["A","B___C","D"]我们没有找到分隔符,而是找到了组件本身。请注意,字符串必须是非_(因为分隔符是_)或多个_。所以匹配它们的正则表达式就是这样。请注意,如果输入以_开头或结尾,此正则表达

javascript - 遍历数组并成对输出(每个第二个元素的分隔符)

我有一个包含匿名元素的数组。通过php将元素添加到数组中,如下所示:$playlist=array();while(databaseloop){$playlist[]=$a_title;$playlist[]=$a_length;}echojson_encode(array('playlist'=>$playlist));所以数组变成:["Hello.mp3","00:00:14","Byebye.mp3","00:00:30","Whatsup.mp3","00:00:07","Goodnight.mp3","00:00:19"]andsoon然后我用ajaxpost在jquery中