@pelevesque/has_prohibited_substring_at_indexes

1.0.1 • Public • Published

Build Status Coverage Status JavaScript Style Guide

has_prohibited_substring_at_indexes

Checks if a string has at least one prohibited substring at a given index.

Related Packages

https://github.com/pelevesque/has_required_substrings_at_indexes
https://github.com/pelevesque/has_required_substrings
https://github.com/pelevesque/has_prohibited_substring
https://github.com/pelevesque/has_required_substrings_after_sums
https://github.com/pelevesque/has_prohibited_substring_after_sums

Node Repository

https://www.npmjs.com/package/@pelevesque/has_prohibited_substring_at_indexes

Installation

npm install @pelevesque/has_prohibited_substring_at_indexes

Tests

Standard Style & Unit Tests

npm test

Unit Tests & Coverage

npm run cover

Usage

str                       (required)
prohibitedSubstrings      (required)
allowLastSubstringToBleed (optional) default = false

Requiring

const hasProhibitedSubstringAtIndexes = require('@pelevesque/has_prohibited_substring_at_indexes')

Basic Usage

prohibitedSubstrings is an object of index -> substring pairs. true is returned if at least one substring is found at the correct index.

const str = 'abcde'
const prohibitedSubstrings = { 0: 'e' }
const result = hasProhibitedSubstringAtIndexes(str, prohibitedSubstrings)
// result === false
const str = 'abcde'
const prohibitedSubstrings = { 0: '!', 2: 'c', 4: '!' }
const result = hasProhibitedSubstringAtIndexes(str, prohibitedSubstrings)
// result === true
const str = 'a man a plan a canal'
const prohibitedSubstrings = { 2: 'man', 8: 'plan', 15: 'canal' }
const result = hasProhibitedSubstringAtIndexes(str, prohibitedSubstrings)
// result === true

Options

allowLastSubstringToBleed

The allowLastSubstringToBleed option is false by default. It it used when you want to allow the last substring to be incomplete if the string is too short. In the following example, the last substring canal starts at the correct index, but remains incomplete since the string ends. Normally this would return false. With allowLastSubstringToBleed set to true, it returns true.

const str = 'a man a plan a c'
const prohibitedSubstrings = { 15: 'canal' }
const allowLastSubstringToBleed = true
const result = hasProhibitedSubstringAtIndexes(str, prohibitedSubstrings, allowLastSubstringToBleed)
// result === true
options style

For style compatibility with related packages like has_required_substrings_after_sums, it is possible to set allowLastSubstringToBleed using an options style.

const str = 'a man a plan a c'
const prohibitedSubstrings = { 15: 'canal' }
const allowLastSubstringToBleed = true
const result = hasProhibitedSubstringAtIndexes(str, prohibitedSubstrings, {
  allowLastSubstringToBleed: allowLastSubstringToBleed
})
// result === true

Package Sidebar

Install

npm i @pelevesque/has_prohibited_substring_at_indexes

Weekly Downloads

1

Version

1.0.1

License

MIT

Unpacked Size

14.4 kB

Total Files

6

Last publish

Collaborators

  • pelevesque