end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

org.apache.commons.lang3.StringUtils for java の splitByCharacterTypeCamelCase() で、 camel to snake 変換

以下のような感じかと思います。

import org.apache.commons.lang3.StringUtils;

// camel -> snake 変換
public String toSnakeStr(String camel) {
    String snake =
            StringUtils.join(
                    StringUtils.splitByCharacterTypeCamelCase(camel), "_")
            .toLowerCase();
    //数字の前には「_」不要
    snake = snake.replaceAll("(_)([0-9])", "$2");

    return snake;
}