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