File size: 2,431 Bytes
e518d03
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
  "rules_version": "1.1.0",
  "description": "Numeric literal recognition and normalisation.",
  "pattern": "(?<![0-9A-Za-z._\\-])(?P<sign>[-+▲△])?(?:(?P<cur>(?:US\\$|USD|JPY|EUR|GBP|KRW|CNY|[$¥€£₩]))\\s{0,2})?(?P<num>(?:[0-9]{1,3}(?:,[0-9]{3})+(?:\\.[0-9]+)?|[0-9]+(?:\\.[0-9]+)?|\\.[0-9]+))(?P<exp>[eE][-+]?[0-9]{1,3})?\\s?(?P<mag>(?:千|万|億|兆|[kKmMbB](?![A-Za-z0-9])))?\\s?(?P<pct>(?:%|パーセント|ポイント|割))?(?:\\s?(?P<unit>(?:円|ドル|ユーロ|元|ウォン|件|人|名|社|店|台|個|本|枚|冊|回|倍|点|位|票|室|席|品|語|文字|字|行|列|頁|ページ|年度|年間|年|ヶ月|か月|カ月|ヵ月|箇月|週間|日間|時間|分間|秒|分|時|日|歳|才|km|cm|mm|kg|mg|GB|MB|TB|KB|PB|Mbps|Gbps|bps|kHz|MHz|GHz|Hz|kW|MW|W|mL|L|m2|㎡|平方メートル|立方メートル|℃|°C|°F|m|g|t|V|A))(?![A-Za-z]))?",
  "components": {
    "number_core": "(?:[0-9]{1,3}(?:,[0-9]{3})+(?:\\.[0-9]+)?|[0-9]+(?:\\.[0-9]+)?|\\.[0-9]+)",
    "currency": "(?:US\\$|USD|JPY|EUR|GBP|KRW|CNY|[$¥€£₩])",
    "magnitude": "(?:千|万|億|兆|[kKmMbB](?![A-Za-z0-9]))",
    "percent": "(?:%|パーセント|ポイント|割)",
    "unit": "(?:円|ドル|ユーロ|元|ウォン|件|人|名|社|店|台|個|本|枚|冊|回|倍|点|位|票|室|席|品|語|文字|字|行|列|頁|ページ|年度|年間|年|ヶ月|か月|カ月|ヵ月|箇月|週間|日間|時間|分間|秒|分|時|日|歳|才|km|cm|mm|kg|mg|GB|MB|TB|KB|PB|Mbps|Gbps|bps|kHz|MHz|GHz|Hz|kW|MW|W|mL|L|m2|㎡|平方メートル|立方メートル|℃|°C|°F|m|g|t|V|A)"
  },
  "magnitude_factors": {
    "千": "1000",
    "万": "10000",
    "億": "100000000",
    "兆": "1000000000000",
    "k": "1000",
    "K": "1000",
    "m": "1000000",
    "M": "1000000",
    "b": "1000000000",
    "B": "1000000000"
  },
  "notes": [
    "Leading ▲/△ and parenthesised values are negative (Japanese/financial accounting notation).",
    "3割 normalises to 30 with kind=percent.",
    "Percent keeps its displayed magnitude (15% -> 15); the 15 <-> 0.15 equivalence is tried separately.",
    "Bare integers 0-10 with no unit are never marked contradicted: they are near everything.",
    "An exact sign flip is decided BEFORE the derivation search, so a loss reported as a profit cannot be excused by a coincidental formula.",
    "ISO currency codes are excluded from entity extraction so 'USD 45,000' keeps its number."
  ]
}