anagram-palindrome

Check if text contain anagram pattern, check if two words are anagram, check if word is palindrome.
Changlog
API Documentation

View the Project on GitHub fajarbc/anagram-palindrome

anagram-palindrome

npm version

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/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

Function

Read complete API documentation here

findPattern

findPattern(pattern, text, options)

areAnagram

areAnagram(word1, word2, options)

isPalindrome

isPalindrome(word, options)

Changelog

Read full Changlog here