ncr-decode

    1.0.2 • Public • Published

    ncr-decode

    A Tool to decode numeric character reference(NCR).

    what is NCR?

    numeric character reference(NCR) is similar to HTML Entities. NCR consists of two parts. prefix: "&#" or "&#x", body: Unicode code point. We offten see it in html, xml or even in dfm file(Delphi Form File).

    there are some NCR string below:

    宋体
    中国
    #23435#20307 (NRC in dfm)
    

    What's this?

    1. A tool to decode NCR string;
    2. A tool to decode NCR in .dfm file;
    3. A cli to decode NCR string.
    4. encode string to NCR.(new)

    Install

    npm install --save ncr-decode

    use the cli

    npm install -g ncr-decode

    see from npm package.

    Usage

    const ncrd = require('ncr-decode')
    console.log(ncrd.encode('宋体')) // 宋体
    console.log(ncrd.encode('宋体', 16)) // 宋体
    console.log(ncrd.decode('宋体')) // 宋体
    console.log(ncrd.decode('Tim, 你&#22909')) // Tim, 你好
    console.log(ncrd.dfmDecode('#23435#20307')) // 宋体
    console.log(ncrd.dfmDecode('宋体')) // 宋体

    Client

    REPL

    PS C:\Users\limoer\www\dfmdecode> ncrd
    enter `.exit` to exit.
    > 宋体
    宋体
    > #23435#20307
    宋体
    > Tom, 你好
    Tom, 你好
    > 123
    [!invalid]  123
    
    

    CLI

    Usage: ncrd [options] [<input string>]
    
      -i, --inline
        inline mode, convert the input string
      <input string>
        NCR string or NCR string in dfm, if type the wrong type, just return.
    

    API

    /**
     * numerric character reference(NCR) decode
     * @param {string} str ncr string
     * @return {string} 
     */
    function ncrDecode(str) {...}
     
    /**
     * NCR in dfm to NCR string
     * @param {string} str 
     * @return {string} 
     */
    // [!Deprecated]use ncrEncode instead
    // function str2NCR(str) {...}
     
    /**
     * string to NCR string
     * @param {string} str 
     * @param {number} radix [10 || 16] default: 10
     * @returns {string} NRC string
     */
    function ncrEncode(str, radix = 10){...}
    /**
     * decode ncr in dfm
     * @param {string} str 
     * @return {string} 
     */
    function dfmDecode(str) {...}

    ChangeLog

    v1.1.0

    1. add tests.
    2. new API ncrEncode convert string to NCR string.
    3. inline CLI support, use ncrd --inline '#23435#20307'. Don't forget the quotes!

    Install

    npm i ncr-decode

    DownloadsWeekly Downloads

    22

    Version

    1.0.2

    License

    ISC

    Unpacked Size

    7.92 kB

    Total Files

    7

    Last publish

    Collaborators

    • limoer