UNPKG

spotify-search-tag-parser

Version:
138 lines (101 loc) 3.03 kB
# Spotify Search Tag Parser This is a Spotify search tag parser. It does extract or remove search tags from a text. [![NPM](https://nodei.co/npm/spotify-search-tag-parser.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/spotify-search-tag-parser/) ## Table of contents - [Features](#features) - [Installation](#installation) - [Usage](#usage) ## Features The library includes functions to do the following: - Remove Spotify search tags from text - Extract Spotify search tags from text ## Installation $ npm install spotify-search-tag-parser --save ## Usage First, instantiate. ```javascript var SpotifySearchTagParser = require("spotify-search-tag-parser"); var spotifySearchTagParser = new SpotifySearchTagParser(); ``` Lastly, use the `spotifySearchTagParser` object's methods to remove or extract spotify search tags. ```javascript // remove artist tag from text let result = spotifySearchTagParser.removeSpotifySearchTag( "album: inhale/exhale artist: nasum", SpotifySearchTagParser.spotifySearchTags.ARTIST ); ``` ### Spotify Search Tags - artist - album - track - label - isrc - upc - year - tag ### Separator Its necessary to include a `;` separator in text when there is no spotify tag separator, examples: - `artist: Guns N' Roses; Appetite for Destruction` - `artist: Guns N' Roses album: Appetite for Destruction; 1987` ### Extract Spotify search tags result When extracting search tags the parser gonna return: - `text`: matched text - `tagValue`: matched tag value in text - `tag`: matched tag type Example: ```javascript var result = spotifySearchTagParser.getSpotifySearchTagMatches( "album:inhale/exhale artist:nasum year:1998" ); ``` Result: ```javascript [ { text: "artist:nasum ", tagValue: "nasum", tag: "artist", }, { text: "album:inhale/exhale ", tagValue: "inhale/exhale", tag: "album", }, { text: "year:1998", tagValue: "1998", tag: "year", }, ]; ``` ### Functions Below are examples for all functions. ```javascript var SpotifySearchTagParser = require("spotify-search-tag-parser"); var spotifySearchTagParser = new SpotifySearchTagParser(); /** * Remove Tag Functions */ // Remove specific tag, album one var result = spotifySearchTagParser.removeSpotifySearchTag( "album: inhale/exhale ; nasum", SpotifySearchTagParser.spotifySearchTags.ALBUM ); // Remove every tag var result = spotifySearchTagParser.removeSpotifySearchTags( "artist: nasum album:inhale/exhale year:1998" ); /** * Extract Tag Functions */ // Extract only one tag var result = spotifySearchTagParser.getSpotifySearchTagMatch( "album:inhale/exhale artist:nasum year:1998", SpotifySearchTagParser.spotifySearchTags.ARTIST ); // Extract every tag var result = spotifySearchTagParser.getSpotifySearchTagMatches( "album:inhale/exhale artist:nasum year:1998" ); ```