javascript - 正则表达式似乎将一个字符串视为多个子字符串

标签 javascript regex

为什么下面的代码返回“ZZZCamelCase”?这样的正则表达式不会检查字符串是否以小写 a-z 开头和结尾吗?据我了解,str变量应该匹配这样的条件,因此控制台输出应该是“ZZZZZZZZZZZZ”,但显然它以某种方式破坏了 str ,并根据正则表达式检查子字符串。为什么?我怎样才能告诉程序将“testCamelCase”视为一个字符串?

var str = "testCamelCase"; 
console.log(str.replace(/^[a-z]+/, 'Z')); // ZZZCamelCase

最佳答案

此处您要匹配一个或多个小写字母。这将是字符串中的“test”,因为后面是一个大写“C”。所以只有“test”被“ZZZ”取代

console.log(str.replace(/^[a-z]+/, 'ZZZ')); // ZZZCamelCase

使用

str.replace(/[a-z]/ig, 'Z')

获取“ZZZZZZZZZZZZ”

关于javascript - 正则表达式似乎将一个字符串视为多个子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33147007/

相关文章:

javascript - 滚动背景过渡在 Chrome 和 IE 上产生链式 react

r - 在R中以分层方式在指定字符之前插入一个字符

java - 使用 java.util.regex.Pattern

mysql - Java 正则表达式 O'Ring

regex - 如何从oracle的正则表达式中排除一个单词?

php - 警告 : preg_match_all(): Unknown modifier 'J' using php

javascript - CASL React 库授权安全吗?

javascript - 无法将文本值分配给事件处理程序中 JQuery 元素的变量

javascript - 如何防止小书签自动重新加载页面?

javascript - 从缓冲区中检索 FLOAT、DOUBLE、INT 或 BOOL 值