gpt4 book ai didi

Javascript 将 PascalCase 转换为 underscore_case/snake_case

转载 作者:IT王子 更新时间:2023-10-29 02:59:57 32 4
gpt4 key购买 nike

如何将 PascalCase 字符串转换为 underscore_case/snake_case 字符串?我还需要将点转换为下划线。

例如。转换

TypeOfData.AlphaBeta

进入

type_of_data_alpha_beta

最佳答案

您可以尝试以下步骤。

  • 捕获所有大写字母并匹配前面的可选点字符。

  • 然后将捕获的大写字母转换为小写字母,然后返回以 _ 作为前导字符的替换函数。这将通过在替换部分使用匿名函数来实现。

  • 这会将起始大写字母替换为 _ + lowercase_letter。

  • 最后删除起始下划线将为您提供所需的输出。

    var s = 'TypeOfData.AlphaBeta';
    console.log(s.replace(/(?:^|\.?)([A-Z])/g, function (x,y){return "_" + y.toLowerCase()}).replace(/^_/, ""));

var s = 'TypeOfData.AlphaBeta';
alert(s.replace(/\.?([A-Z])/g, function (x,y){return "_" + y.toLowerCase()}).replace(/^_/, ""));

any way to stop it for when a whole word is in uppercase. eg. MotorRPM into motor_rpm instead of motor_r_p_m? or BatteryAAA into battery_aaa instead of battery_a_a_a?

var s = 'MotorRMP';
alert(s.replace(/\.?([A-Z]+)/g, function (x,y){return "_" + y.toLowerCase()}).replace(/^_/, ""));

关于Javascript 将 PascalCase 转换为 underscore_case/snake_case,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30521224/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com