Đọc số tiền bằng chữ, tiếng lóng API
Chuyển số tiền viết bằng chữ hoặc tiếng lóng thành số: “hai triệu rưỡi”, “2tr5”, “500k”, “1 tỷ 2”, “2 củ”; xử lý hàng loạt và tìm số tiền trong câu.
Chiều ngược của đọc số thành chữ. Bộ phân tích hiểu cách đọc chuẩn (hai nghìn không trăm hai mươi sáu, một trăm lẻ năm, ba mươi mốt, mười lăm nghìn), cách nói tắt (hai triệu rưỡi, trăm rưỡi, một tỷ hai = 1,2 tỷ, hai lăm nghìn, nửa triệu), tiếng lóng khi mua bán, chat (500k, 2tr5, 1k2, 2 củ, 1 tỏi, 2 lít), dấu thập phân và phân cách hàng nghìn kiểu Việt Nam (1,5 triệu, 1.500.000đ) và chữ gõ không dấu (hai trieu ruoi).
Mỗi kết quả gồm giá trị, loại tiền khi có ghi (đồng, đ, VNĐ, $, USD) hoặc suy ra từ tiếng lóng, số tiền đọc lại bằng chữ, độ tin cậy và cách hiểu khác khi chuỗi mơ hồ (2tr5 theo nghĩa đen là 2.000.005; 1.500 có thể là 1,5). mode=extract tìm mọi số tiền trong một câu kèm vị trí ký tự, tiện cho đơn hàng qua chat hay nội dung chuyển khoản; texts xử lý tới 1.000 chuỗi một lần.
Khoảng giá như “2-3 triệu” được trả về thành hai số, còn chuỗi như “hai ba” bị từ chối vì mơ hồ thay vì đoán bừa.
Tham số
| Tên | Vị trí | Kiểu | Bắt buộc | Mặc định | |
|---|---|---|---|---|---|
text | query|body | string | có | Số tiền (hoặc một câu khi mode=extract). | |
mode | query|body | string | không | parse | parse: cả chuỗi là một số tiền; extract: tìm các số tiền trong chuỗi. |
texts | body | array | không | Tối đa 1.000 chuỗi (hàng loạt). | |
money_only | query|body | boolean | không | false | Khi tìm trong câu: chỉ giữ số có đơn vị tiền, tiếng lóng hoặc nghìn, triệu… |
Ví dụ
curl "https://apibox.io.vn/v1/vn-number-parse?mode=extract&text=C%E1%BB%8Dc%202tr5%2C%20c%C3%B2n%20l%E1%BA%A1i%20m%E1%BB%99t%20tri%E1%BB%87u%20hai%20tr%C4%83m%20ngh%C3%ACn%20%C4%91%E1%BB%93ng%2C%20ship%2030k" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch('https://apibox.io.vn/v1/vn-number-parse?mode=extract&text=C%E1%BB%8Dc%202tr5%2C%20c%C3%B2n%20l%E1%BA%A1i%20m%E1%BB%99t%20tri%E1%BB%87u%20hai%20tr%C4%83m%20ngh%C3%ACn%20%C4%91%E1%BB%93ng%2C%20ship%2030k', {
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
},
});
const data = await res.json();
console.log(data);import requests
res = requests.get(
"https://apibox.io.vn/v1/vn-number-parse?mode=extract&text=C%E1%BB%8Dc%202tr5%2C%20c%C3%B2n%20l%E1%BA%A1i%20m%E1%BB%99t%20tri%E1%BB%87u%20hai%20tr%C4%83m%20ngh%C3%ACn%20%C4%91%E1%BB%93ng%2C%20ship%2030k",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/vn-number-parse?mode=extract&text=C%E1%BB%8Dc%202tr5%2C%20c%C3%B2n%20l%E1%BA%A1i%20m%E1%BB%99t%20tri%E1%BB%87u%20hai%20tr%C4%83m%20ngh%C3%ACn%20%C4%91%E1%BB%93ng%2C%20ship%2030k');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Kết quả trả về
{
"mode": "extract",
"text": "Cọc 2tr5, còn lại một triệu hai trăm nghìn đồng, ship 30k",
"count": 3,
"amounts": [
{
"text": "2tr5",
"value": 2500000,
"currency": "VND",
"is_money": true,
"in_words": "Hai triệu năm trăm nghìn đồng",
"confidence": 0.85,
"alternatives": [
{
"value": 2000005,
"reading": "literal (the trailing number as units)"
}
],
"start": 4,
"end": 8
},
{
"text": "một triệu hai trăm nghìn đồng",
"value": 1200000,
"currency": "VND",
"is_money": true,
"in_words": "Một triệu hai trăm nghìn đồng",
"confidence": 1,
"alternatives": [],
"start": 18,
"end": 47
},
{
"text": "30k",
"value": 30000,
"currency": "VND",
"is_money": true,
"in_words": "Ba mươi nghìn đồng",
"confidence": 1,
"alternatives": [],
"start": 54,
"end": 57
}
],
"total": 3730000
}
Ứng dụng
- Đọc giá khách gõ trong chatbot bán hàng
- Tách số tiền trong nội dung chuyển khoản
- Chuẩn hoá ngân sách nhập tự do khi tìm bất động sản (“dưới 3 tỷ”)
- Chuyển kết quả nhận dạng giọng nói thành số
Hỏi đáp
“2tr5” được hiểu thế nào?
Là 2.500.000: chữ số sau đơn vị là phần lẻ của đơn vị kế tiếp (như “2 triệu 5 trăm nghìn”). Cách hiểu theo nghĩa đen 2.000.005 được trả trong alternatives.
Gõ không dấu có được không?
Được với từng số tiền (“hai trieu ruoi”). Ở chế độ tìm trong câu, chữ không dấu cần có đơn vị (trieu, nghin…) để tránh nhận nhầm.
Hỗ trợ những tiếng lóng nào?
k / nghìn / ngàn, tr / triệu / củ, tỷ / tỉ / tỏi, lít và xị (100.000), chục, rưỡi và nửa.
API liên quan
So sánh văn bản
So sánh hai đoạn văn bản theo dòng, từ, ký tự, câu hoặc JSON; nhận danh sách thay đổi, tỉ lệ giống nhau và bản diff dạng unified.
a-bTạo slug
Chuyển tiêu đề thành slug URL gọn gàng: bỏ dấu tiếng Việt (cả chữ đ), tuỳ chọn ký tự phân cách, giữ chữ hoa và giới hạn độ dài.
123Thống kê văn bản
Đếm số từ, ký tự, câu, đoạn và dòng; ước tính thời gian đọc và thời gian nói; liệt kê các từ xuất hiện nhiều nhất trong văn bản.