Skip to content

Commit

Permalink
feat: add ssn pattern and extend cc
Browse files Browse the repository at this point in the history
  • Loading branch information
JaredBett committed Mar 20, 2017
1 parent 9e88539 commit 03a7eae
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
3 changes: 2 additions & 1 deletion lib/patterns.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,12 @@ var roadRegex = /(street|st|road|rd|avenue|ave|drive|dr|loop|court|ct|circle|cir

module.exports = {
name: new RegExp(`\\b((${firstNames.join('|')}|${lastNames.join('|')})[- ]+)*(${lastNames.join('|')})\\b`, 'gi'),
creditCardNumber: /\d{4}[ -]?\d{4}[ -]?\d{4}[ -]?\d{4}/g,
creditCardNumber: /\d{4}[ -]?\d{4}[ -]?\d{4}[ -]?\d{4}|\d{4}[ -]?\d{6}[ -]?\d{4}\d?/g,
streetAddress: new RegExp(`(\\d+\\s*(\\w+ ){1,2}${roadRegex.source}(\\s+${aptRegex.source})?)|(${poBoxRegex.source})`, 'gi'),
zipcode: /\b\d{5}\b(-\d{4})?\b/gi,
phoneNumber: /(\(?\+?[0-9]{1,2}\)?[-. ]?)?(\(?[0-9]{3}\)?|[0-9]{3})[-. ]?([0-9]{3}[-. ]?[0-9]{4}|\b[A-Z0-9]{7}\b)/g,
ipAddress: /(\d{1,3}(\.\d{1,3}){3}|[0-9A-F]{4}(:[0-9A-F]{4}){5}(::|(:0000)+))/gi,
ssn: /\d{3}[ -.]?\d{2}[ -.]?\d{4}/g,
emailAddress: /([a-z0-9_\-.+]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-z0-9-]+\.?)+))([a-z]{2,4}|[0-9]{1,3})(]?)/gi,
username: /(user( ?name)?|login): \S+/gi,
password: /(pass(word|phrase)?|secret): \S+/gi,
Expand Down
15 changes: 15 additions & 0 deletions test/index.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,21 @@ defineTest('index.js', function (Redactor) {
redactor.redact('my card: 1234 5678 8765 4321.').should.equal('my card: CREDIT_CARD_NUMBER.');
redactor.redact('my 2nd card: 1234-5678-8765-4321.').should.equal('my DIGITSnd card: CREDIT_CARD_NUMBER.');
redactor.redact('my 3rd card: 1234567887654321.').should.equal('my DIGITSrd card: CREDIT_CARD_NUMBER.');

redactor.redact('my AMEX card: 1234 567890 12345.').should.equal('my AMEX card: CREDIT_CARD_NUMBER.');
redactor.redact('my AMEX 2nd card: 1234-567890-12345.').should.equal('my AMEX DIGITSnd card: CREDIT_CARD_NUMBER.');
redactor.redact('my AMEX 3rd card: 123456789012345.').should.equal('my AMEX DIGITSrd card: CREDIT_CARD_NUMBER.');

redactor.redact('my DINERS card: 1234 567890 1234.').should.equal('my DINERS card: CREDIT_CARD_NUMBER.');
redactor.redact('my DINERS 2nd card: 1234-567890-1234.').should.equal('my DINERS DIGITSnd card: CREDIT_CARD_NUMBER.');
redactor.redact('my DINERS 3rd card: 12345678901234.').should.equal('my DINERS DIGITSrd card: CREDIT_CARD_NUMBER.');
});

it('should replace ssn', function () {
redactor.redact('my ssn: 123 45 6789.').should.equal('my ssn: SSN.');
redactor.redact('my ssn: 123-45-6789.').should.equal('my ssn: SSN.');
redactor.redact('my ssn: 123.45.6789.').should.equal('my ssn: SSN.');
redactor.redact('my ssn: 123456789.').should.equal('my ssn: SSN.');
});

it('should replace phone numbers', function () {
Expand Down

0 comments on commit 03a7eae

Please sign in to comment.