New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

pattern-grab

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pattern-grab

🤛🏻 Regular Expression Data Grabber

latest
npmnpm
Version
1.0.1
Version published
Weekly downloads
2
-75%
Maintainers
1
Weekly downloads
 
Created
Source

pattern-grab

🤛🏻 Regular Expression Data Grabber

Github Workflow GitHub License Jest Coverage Gzip Size TypeScript NPM Version jsDelivr AMA

Pattern-grab simplifies the process of parsing string patterns using regular expressions.


📦 Usage (ES5+)

npm i pattern-grab
import patternGrab from 'pattern-grab'

// Data
const regex = /<[^>]*>/gm
const string = `<span>Yup This is a <b>Test</b> Yea <img src="/blabla.png" /> Its Ok?</span>`

// Pattern Grab
const { data, positions } = patternGrab({ regex, string })


// The HTML tag strings are grabbed.
data === [
  "<span>",
  "Yup This is a ",
  "<b>",
  "Test",
  "</b>",
  " Yea ",
  '<img src="/blabla.png" />',
  " Its Ok?",
  "</span>",
];

// Actually matched elements position are grabbed.
positions === [0, 2, 4, 6, 8]

// It is easy to handle because it is placed with other strings.
data.forEach((element, index) => {
  if(positions.includes(index)){
    // HTML Tag
  } else {
    // Plain text
  }
})

📦 Usage (CDN)

<script src="https://cdn.jsdelivr.net/npm/pattern-grab/export/pattern-grab.js"></script>
var patternGrab = window.patternGrab

// Pattern Grab
var grab = patternGrab({
  regex: /<[^>]*>/gm,
  string:  `<span>Yup This is a <b>Test</b> Yea <img src="/blabla.png" /> Its Ok?</span>`
})

// The HTML tag strings are grabbed.
grab.data == [
  "<span>",
  "Yup This is a ",
  "<b>",
  "Test",
  "</b>",
  " Yea ",
  '<img src="/blabla.png" />',
  " Its Ok?",
  "</span>",
];

// Actually matched elements position are grabbed.
grab.positions == [0, 2, 4, 6, 8]

// It is easy to handle because it is placed with other strings.
for(index in grab.data){
  var element = grab.data[index]
  if(grab.positions.indexOf(index) != -1){
    // HTML Tag
  } else {
    // Plain text
  }
}

💡 License

MIT Licensed.

Keywords

typescript

FAQs

Package last updated on 28 May 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts