文本统计 / 人民币大写 / JSON API

文本字数统计、金额转人民币大写、JSON 格式化压缩与校验

数据来源:本地计算

返回统一的 JSON 格式 { code, message, cached, stale, updatedAt, data },支持跨域,免注册每天可免费调用 100 次,注册后每天 10000 次。

文本统计:字符数、汉字、英文单词、数字、标点、行数、段落、字节数、阅读时长(长文本请用 POST)

GET /api/tools/text-stat

请求参数

  • text(必填):要统计的文本,最多 100000 个字符,示例 Hello 世界! 这是第二行,共 3 个 words。

返回字段

  • characters(number):字符总数(按 Unicode 字符计,emoji 算 1 个,含空白和换行)
  • charactersNoSpaces(number):不含空白(空格、制表符、换行等)的字符数
  • chinese(number):汉字数(Unicode Han 字符,含繁体和扩展区,不含中文标点)
  • letters(number):英文字母数(A-Z、a-z)
  • digits(number):阿拉伯数字个数(0-9,每位算 1 个)
  • spaces(number):空白字符数(空格、制表符、全角空格等,不含换行)
  • punctuation(number):标点符号总数(Unicode 标点类,中英文都算;不含 + = $ 等符号类字符)
  • chinesePunctuation(number):中文(全角)标点数,如 ,。!?;:“”‘’()《》、…—
  • englishWords(number):英文单词数(连续字母,允许中间带 ' 或 -,如 don't、e-mail 各算 1 个)
  • numbers(number):数字串个数(连续数字算 1 个,可带小数点,如 3.14)
  • words(number):字数(汉字数 + 英文单词数 + 数字串数),接近 Word 的中英混排统计口径
  • lines(number):行数(\n、\r\n、\r 都算换行;空文本为 0,末尾换行后的空行也算 1 行)
  • nonEmptyLines(number):非空行数(去掉只含空白的行)
  • paragraphs(number):段落数(以空行分隔、且含非空白内容的块)
  • bytes(number):UTF-8 编码后的字节数(汉字一般 3 字节,emoji 4 字节)
  • readingMinutes(number):估算阅读时长(分钟,保留 1 位小数),按中文每分钟 400 字、英文每分钟 200 词

文本统计:字符数、汉字、英文单词、数字、标点、行数、段落、字节数、阅读时长(长文本请用 POST)(POST JSON 请求体,参数不进网址)

POST /api/tools/text-stat

请求参数

  • text(必填):要统计的文本,最多 100000 个字符,示例 Hello 世界! 这是第二行,共 3 个 words。

返回字段

  • characters(number):字符总数(按 Unicode 字符计,emoji 算 1 个,含空白和换行)
  • charactersNoSpaces(number):不含空白(空格、制表符、换行等)的字符数
  • chinese(number):汉字数(Unicode Han 字符,含繁体和扩展区,不含中文标点)
  • letters(number):英文字母数(A-Z、a-z)
  • digits(number):阿拉伯数字个数(0-9,每位算 1 个)
  • spaces(number):空白字符数(空格、制表符、全角空格等,不含换行)
  • punctuation(number):标点符号总数(Unicode 标点类,中英文都算;不含 + = $ 等符号类字符)
  • chinesePunctuation(number):中文(全角)标点数,如 ,。!?;:“”‘’()《》、…—
  • englishWords(number):英文单词数(连续字母,允许中间带 ' 或 -,如 don't、e-mail 各算 1 个)
  • numbers(number):数字串个数(连续数字算 1 个,可带小数点,如 3.14)
  • words(number):字数(汉字数 + 英文单词数 + 数字串数),接近 Word 的中英混排统计口径
  • lines(number):行数(\n、\r\n、\r 都算换行;空文本为 0,末尾换行后的空行也算 1 行)
  • nonEmptyLines(number):非空行数(去掉只含空白的行)
  • paragraphs(number):段落数(以空行分隔、且含非空白内容的块)
  • bytes(number):UTF-8 编码后的字节数(汉字一般 3 字节,emoji 4 字节)
  • readingMinutes(number):估算阅读时长(分钟,保留 1 位小数),按中文每分钟 400 字、英文每分钟 200 词

金额转人民币大写,如 1234.56 → 壹仟贰佰叁拾肆元伍角陆分

GET /api/tools/rmb

请求参数

  • amount(必填):金额:最多 16 位整数、2 位小数,可带负号;千分位逗号、空格和 ¥ 会被忽略,示例 1234.56

返回字段

  • amount(string):规范化后的金额,固定两位小数,如 1234.56、-0.05
  • capital(string):中文大写金额。按财务写法:整数部分带“元”,没有角分时以“整”结尾;有角无分时不加“整”;元与分之间缺角时写“零”(如 壹元零伍分);负数前加“负”;0 为 零元整;亿以上按“万亿”读(如 壹万零壹亿元整)
  • formatted(string):带千分位的小写金额,如 ¥1,234.56

JSON 格式化 / 压缩 / 校验,出错时给出行号和列号

POST /api/tools/json

请求参数

  • text(必填):JSON 文本,最多 100000 个字符(受请求体 100KB 限制),示例 {"id":1,"name":"张三","tags":["a","b"]}
  • action:format 格式化;minify 压缩;validate 只校验(result 为 null),示例 format
  • indent:格式化缩进:2 / 4(空格)或 tab,示例 4
  • sortKeys:是否按键名排序(递归),true / false,示例 true

返回字段

  • action(string):执行的操作:format / minify / validate
  • valid(boolean):输入是否为合法 JSON(按 JSON 标准,不接受注释、尾逗号、单引号)
  • result(string|null):format / minify 的结果;validate 或 JSON 不合法时为 null
  • error(object|null):JSON 不合法时的错误位置;合法时为 null
  • error.message(string):解析器的错误信息(英文,来自 V8),如 Unexpected token } in JSON at position 10
  • error.position(number):出错位置(从 0 开始的字符下标)
  • error.line(number):出错的行号(从 1 开始)
  • error.column(number):出错的列号(从 1 开始)
  • stats(object):统计信息;JSON 不合法时除 inputBytes 外都为 0
  • stats.inputBytes(number):输入的 UTF-8 字节数
  • stats.outputBytes(number):输出结果的 UTF-8 字节数;没有结果时为 0
  • stats.nodes(number):节点总数(每个对象、数组、字符串、数字、布尔、null 各算 1 个)
  • stats.keys(number):所有对象的键总数
  • stats.depth(number):最大嵌套深度(顶层对象或数组为 1,顶层是标量时为 0);超过 500 层返回 400