【发布时间】:2013-12-17 07:35:08
【问题描述】:
我正在尝试用“.sss”替换所有出现的“S”(大写 S):
例如,下面一行甚至不包含大写字母 S,它仍然替换了很多:
"MM/dd/yyyy EEEE hh:mm aa".replace(new RegExp('S*', 'g'),'.sss')
结果是:
".sssM.sssM.sss/.sssd.sssd.sss/.sssy.sssy.sssy.sssy.sss .sssE.sssE.sssE.sssE.sss .sssh.sssh.sss:.sssm.sssm.sss .sssa.sssa.sss"
没有任何想法..
(要测试此示例,只需将其复制并粘贴到任何页面上的 chrome 或 firefox 开发工具中并运行它)
【问题讨论】:
-
应该是
new RegExp('S','g')或者只是/S/g,*匹配任何东西。 -
你为什么使用星号 (0-1) 量化器?只匹配一个。
-
我也想匹配尾随 SSSS 的
-
使用
new RegExp('S+', '.sss')
标签: javascript regex