Javascript Regexp模式匹配

时间:2010-03-10 16:16:04

标签: javascript regex

"CamelCase".replace(/[A-Z]/g, " $1")

可生产

>>" $1amel $1ase"

如何更换所有骆驼案件。

3 个答案:

答案 0 :(得分:2)

您需要使用方括号()进行分组

"CamelCase".replace(/([A-Z])/g, " $1")

产生

 Camel Case

答案 1 :(得分:2)

您无需使用群组。 Use $& to reference the whole match

"CamelCase".replace(/[A-Z]/g, " $&")

当使用/(?!^)[A-Z]/g代替时,你将无法获得领先的空间:

"CamelCase".replace(/(?!^)[A-Z]/g, " $&") === "Camel Case"

答案 2 :(得分:1)

也许我错过了一些明显的东西,但之前的答案并不是针对CamelCased内容,而是针对所有出现的大写字母。

此示例保留连续的大写字母块,仅分隔非大写字母后跟大写字母(即CamelCase)。

"CamelCaseTestHTML".replace(/([^A-Z])([A-Z])/g, "$1 $2")
// Camel Case Test HTML