anagram-palindrome
v0.3.2
Published
Check if text contain anagram pattern, check if two words are anagram, check if word is palindrome
Downloads
13
Maintainers
Readme
anagram-palindrome
Find anagram words if existed from the given pattern. Check if two strings are anagram. Check if the given word is palindrome.
It has npm package here called anagram-palindrome
Support CJS and ESM
Install
npm i anagram-palindrome
Usage
ESM Style
import { findPattern, areAnagram, isPalindrome } from "anagram-palindrome"
// findPattern
console.log(findPattern("car", "race car care")) // [ 'rac', 'car', 'arc', 'rca', 'car' ]
console.log(findPattern("car", "race car care", {unique: true})) // [ 'rac', 'car', 'arc', 'rca' ]
console.log(findPattern("car", "race car care", {space: true})) // [ 'rac', 'car', 'car' ]
console.log(findPattern("car", "race car care", {space: true, unique: true})) // [ 'rac', 'car' ]
console.log(findPattern("cAr", "race car cAre", {caseSensitive: true})) // [ 'rcA', 'cAr' ]
// areAnagram
console.log(areAnagram("mything", "My night")) // true
console.log(areAnagram("mything", "My night", {space: true})) // false
console.log(areAnagram("Thing", "Night", {caseSensitive: true})) // false
console.log(areAnagram("My thing", "My night", {caseSensitive: true, space: true})) // true
console.log(areAnagram("Mything", "My Night", {caseSensitive: true, space: true})) // false
// isPalindrome
console.log(isPalindrome("Race car")) // true
console.log(isPalindrome("Racecar", {caseSensitive: true})) // false
console.log(isPalindrome("race car", {space: true})) // false
console.log(isPalindrome("Rac e caR", {caseSensitive: true, space: true})) // true
console.log(isPalindrome("Race car", {caseSensitive: true, space: true})) // false
CJS Style
const { findPattern, areAnagram, isPalindrome } = require("anagram-palindrome")
// findPattern
console.log(findPattern("car", "race car care")) // [ 'rac', 'car', 'arc', 'rca', 'car' ]
In Browser
If you are using this directly in your browser, you could use type="module"
in your script
tag. Here, I'm using unpkg.com as cdn source to call package anagram-palindrome
version 0.3.2
and stright to file dist/index.mjs
.
<script type="module">
import { findPattern } from 'https://unpkg.com/[email protected]/dist/index.mjs';
console.log(findPattern("car", "race car care")) // [ 'rac', 'car', 'arc', 'rca', 'car' ]
</script>
or import all function
<script type="module">
import * as ap from 'https://unpkg.com/[email protected]/dist/index.mjs';
console.log(ap.findPattern("car", "race car care")) // [ 'rac', 'car', 'arc', 'rca', 'car' ]
</script>
You can change cdn from unpkg.com to jsdelivr.net by replacing
https://unpkg.com/[email protected]/dist/index.mjs
with
https://cdn.jsdelivr.net/npm/[email protected]/dist/index.mjs
Function
Read complete API documentation here
findPattern
findPattern(pattern, text, options)
- Description: return anagram words/sequences from the given string (text) if any
- Return type
array
pattern
(string) is the sequence string you look for in in the stringtext
text
(string) is the whole string you want to look for thepattern
options
(object) is an object to customize the options desribed bellow: | Parameter | Type | Deafult | Description | |:----------|:----:|:-------:|:------------| | space | boolean | false |true
means space counted as a character.false
means space is not counted as character and will be ignored | | caseSensitive | boolean | false |true
means case sensitive character.false
means case insensitive | | unique | boolean | false |true
only return unique sequence result.false
will return all sequence result |- Example use :
import { findPattern } from "anagram-palindrome" console.log(findPattern("car", "race car care", {space: true, unique: true})) // [ 'rac', 'car' ]
areAnagram
areAnagram(word1, word2, options)
Description: Check if two strings are anagram
Return type
boolean
.true
if they are anagram,false
if it is not anagramword1
andword2
is the text/string you you want to check wether if they are anagram or notoptions
(object) is an object to customize the options desribed bellow:| Parameter | Type | Deafult | Description | |:----------|:----:|:-------:|:------------| | space | boolean | false |
true
means space counted as a character.false
means space is not counted as character and will be ignored | | caseSensitive | boolean | false |true
means case sensitive character.false
means case insensitive |Example use :
import { areAnagram } from "anagram-palindrome" console.log(areAnagram("Thing", "Night", {caseSensitive: true})) // false console.log(areAnagram("Thing", "Night")) // true
isPalindrome
isPalindrome(word, options)
Description: Check if the word is palindrome
Return type
boolean
.true
if the word palindrome,false
if it is not palindromeword
is the text/string you you want to check if it is palindrome or notoptions
(object) is an object to customize the options desribed bellow:| Parameter | Type | Deafult | Description | |:----------|:----:|:-------:|:------------| | space | boolean | false |
true
means space counted as a character.false
means space is not counted as character and will be ignored | | caseSensitive | boolean | false |true
means case sensitive character.false
means case insensitive |Example use :
import { isPalindrome } from "anagram-palindrome" console.log(isPalindrome("Race car")) // true console.log(isPalindrome("Racecar", {caseSensitive: true})) // false console.log(isPalindrome("race car", {space: true})) // false
Changelog
Read full Changlog here