RegFormatter
Regular Formatter - formatting string by specified pattern


Download
ZIP file
Download
TAR file
View on
GitHub

Examples



var phone = new RegFormatter(document.getElementById('phone'), {
    formats: [
        "+%7% (%[0-9]{3}%) %\\d{3}%-%\\d{2}%-%\\d{2}%",
        "%8% (%[0-9]{3}%) %\\d{3}%-%\\d{2}%-%\\d{2}%",
        "%\\d{2}% (%[0-9]{3}%) %\\d{3}%-%\\d{2}%-%\\d{2}%"
    ]
});


var cardNumber = new RegFormatter(document.getElementById('cardnumber'), { format: "%\\d{4}% %\\d{4}% %\\d{4}% %\\d{4}% %\\d{2}%" });


var cardDate = new RegFormatter(document.getElementById('carddate'), { format: "%[01]\\d%\/%\\d{2}%" });

Test your pattern




Constructor


Vanilla JavaScript

new RegFormatter(element, obj)

jQuery

$("selector").regformatter(obj)

element - INPUT element (optional parameter)

obj.format - pattern that will be used to format element (optional parameter if obj.formats is specified)

obj.formats - array of patterns (optional parameter if obj.format is specified)


Instance methods


value(val) returns the input value without formatting

val - formatted value (optional parameter, element.value by default)

phone.value();


write(str, value, positionStart, positionEnd) returns an object that contains the new value, which is obtained by writing str to value between position positionStart and positionEnd, and new position index

positionEnd - optional parameter

phone.write("7", document.getElementById('phone').value, 0)


reset(format) set the new pattern (or array of patterns) that will be used to format element

phone.reset("%[0-9]{3}% %\\d{3}% %\\d{2}% %\\d{2}%")