Skip to content

A Tool to decode numeric character reference(NCR).

Notifications You must be signed in to change notification settings

Limoer96/ncr-decode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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!

About

A Tool to decode numeric character reference(NCR).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published