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
npm i anagram-palindrome
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
const { findPattern, areAnagram, isPalindrome } = require("anagram-palindrome")
// findPattern
console.log(findPattern("car", "race car care")) // [ 'rac', 'car', 'arc', 'rca', 'car' ]
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/anagram-palindrome@0.3.2/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/anagram-palindrome@0.3.2/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/anagram-palindrome@0.3.2/dist/index.mjs
with
https://cdn.jsdelivr.net/npm/anagram-palindrome@0.3.2/dist/index.mjs
Read complete API documentation here
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 ignoredcaseSensitive boolean false true
means case sensitive character.
false
means case insensitiveunique 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(word1, word2, options)
-
Description: Check if two strings are anagram
-
Return type
boolean
.true
if they are anagram,false
if it is not anagram -
word1
andword2
is the text/string you you want to check wether if they are anagram or not -
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 ignoredcaseSensitive 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(word, options)
-
Description: Check if the word is palindrome
-
Return type
boolean
.true
if the word palindrome,false
if it is not palindrome -
word
is the text/string you you want to check if it is palindrome or not -
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 ignoredcaseSensitive 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
Read full Changlog here