1.0.2 • Published 9 years ago

sumi-regexp v1.0.2

Weekly downloads
3
License
-
Repository
github
Last release
9 years ago

sumi-regexp

A wrapper for the JavaScript RegExp object with a library of preset regular expressions to make it simple and smart. Stand alone mod, no dependencies.

Target environments

  • IE 6+
  • Latest Stable: Firefox, Chrome, Safari, Opera
  • Node.js & other non-browser environments or browser extensions

Quick start

Four quick start options are available:

  • Download the latest release
  • Clone the repo: git clone https://github.com/rainersu/regexp.git
  • Install with Bower: bower install sumi-regexp
  • Install with npm: npm install sumi-regexp

Example use

Including in a browser:

<script type='text/javascript' src='/path/to/sumi-regexp-1.0.2.min.js'></script>
<script type='text/javascript'>
var Pattern = sumiRegExp;
var pat = new Pattern('color');
console.log(pat.parse('background-color: hsla(240, 100%, 50%, 0.05); color: #F03;', false));

/* [ 
{ [String: 'hsla(240, 100%, 50%, 0.05)'] h: 240, s: 100, l: 50, a: 0.05 },
{ [String: '#F03'] r: 255, g: 0, b: 51, a: 1 }
] */

</script>

As a module that works with AMD(e.g., RequireJS):

define(['/path/to/sumi-regexp'], function(Pattern) {
	var pat = new Pattern('email');
	console.log(pat.parse('admin@me.com'));
	
	// [ { [String: 'admin@me.com'] domain: 'me.com', user: 'admin' } ]
	
});

Including in a CommonJS environment(e.g., Node.js):

var Pattern = require('/path/to/sumi-regexp');
var cnID = new Pattern(
    '(\\d{2})(\\d{2})(\\d{2})(\\d{4})(\\d{2})(\\d{2})(\\d{2}(\\d{1}))([\\dX]{1})',
    'province,city,district,year,month,day,serial,sex,code',
    function (o) {
        return {
            sex: +o.sex % 2 ? 'male' : 'female',
            birthday: new Date(+o.year, +o.month - 1, +o.day).toLocaleDateString()
        }
    }
);
console.log(cnID.parse('44011119800315281X'));  // [ { sex: 'male', birthday: '1980-03-15' } ]

Build from source

First, you need to have Node.js and Grunt installed.

$ git clone git@github.com:rainersu/regexp.git
$ npm install -g grunt-cli
$ cd regexp
$ npm install
$ grunt

It provides compiled JS (sumi-regexp.*), as well as compiled and minified JS (sumi-regexp.min.*). JS source maps (sumi-regexp.*.map) are available for use with certain browsers' developer tools.

Running demos for testing

$ grunt test

Build & running documentation locally

$ grunt help

Sorry, the documentation is currently offered only in the Chinese language. Do you have time to help me with some Chinese - English translations?

How to contact me

Copyright and license

Copyright 2015 Rainer Su (苏昱).

Code and documentation is free to use under the MIT license.