我正在尝试编写一个正则表达式,它将用下划线(在 Java 中)替换 JavaScript 变量名中的所有无效字符。
我想做的是:
String jsVarName = "1inva>idName".replaceAll("[a-zA-Z_$][0-9a-zA-Z_$]", "_");
最后得到一个名为_inva_idName
.
我正在努力做的是弄清楚如何使第一个角色与其他角色不同。
[a-zA-Z_$][0-9a-zA-Z_$]
是我想要的字符,但我无法弄清楚将它们连接到正确的语法中。我知道 JS var 名称可以是完整的 unicode,但我只关心 ASCII。