regex如何删除特定单词后的逗号
regex how to remove commas after a specific word
我目前正试图使用正则表达式删除特定单词"SUM('和最后一个'之前)"之后的任何逗号。换句话说,我想删除函数SUM()中所有的开始和结束逗号。我使用javascript函数replace在regex上执行此操作。
下面的例子说明了用regex:调用replace函数后我要做的事情
SUM(,,,,1,2,) // result should be SUM(1,2)
SUM(,1,2,) // result should be SUM(1,2)
SUM(,1,2,,,) // result should be SUM(1,2)
SUM(,,,,1,34) // result should be SUM(1,34)
SUM(,,,,0,0,0) // result should be SUM(0,0,0)
目前我一直在尝试这个正则表达式:
(^SUM'()',|(',+)')$
但我只想在单词"SUM("后面和最后一个括号")"之前的逗号上匹配。有人能帮我吗?
使用此模式:
/(^SUM)'(,*(.*?),*')/gm
并将其替换为$1($2)
。
在线演示
用一个逗号替换多个逗号,然后修复开头和结尾:
str .
replace(/,+/g, ',') .
replace(/'(,/, '(') .
replace(/,')/, ')')
如果你不在乎删除项目之间的多个逗号,那么
str . replace(/'(,+/g, '(') . replace(/,+'(/, '(')
您可以将这些组合成一个regexp作为
var str = "SUM(,1,2,,,)";
var result = str.replace(/('(),+|,+('))|(,),*/g, '$1$2$3')
// ^^^^^^ MATCH (,,,
// ^^^^^^ MATCH ,,,)
// ^^^ MATCH commas between items
document.write(result);
相关文章:
- 从输入值中删除最后一个单词
- regex如何删除特定单词后的逗号
- 删除javascript中包含特定单词的行
- 从语音识别api结果中删除以前识别的单词
- 在某些情况下,“text”方法会删除单词之间的空格
- 如何删除两个单词之间的字符串
- 我在angular JS中选择了一个默认选项,并删除了两个单词之间的下划线
- 删除连续重复的单词javascript
- Javascript删除某个单词所在的html行
- j查询从数组中删除值(如果包含单词)
- 如何使搜索框中的单词可单击以使用 jquery 删除它们
- 如何删除句点和前一个单词之间的空格
- 删除带有单词javascript的大括号之间的空格
- 什么是用于删除大写字母之间的空格的正则表达式,但在单词之间保留空格
- Javascript从2个单词短语中删除第二个单词,而无需更改第一个单词
- 如何删除空格和重新排序单词
- 匹配确切的单词并删除正则表达式中的前导空格
- 如何使用javascript或jquery删除单词的第一个空格
- 正则表达式删除所有白色景观,除了单词之间的一个
- Angular过滤器,用于在应用过滤器之前从输入的单词中删除重音