
Research
/Security News
Popular Tinycolor npm Package Compromised in Supply Chain Attack Affecting 40+ Packages
Malicious update to @ctrl/tinycolor on npm is part of a supply-chain attack hitting 40+ packages across maintainers
XRegExp regular expressions without the pain in the ass.
$ yarn add xre
import xre from 'xre';
const date = xre`/
(?<year> \d{4}) - # Year
(?<month> \d{2}) - # Month
(?<day> \d{2}) # Day
/x`;
const { year, month, day } = date.exec('2017-06-11');
console.log(`Year: ${year}, month: ${month}, day: ${day}`);
// → Year: 2017, month: 06, day: 11
import xre, { configure } from 'xre';
import XRegExp from 'xregexp';
// By default xre uses minimal version of XRegExp,
// so to use the power add-ons we have to configure it
// with full version of XRegExp:
configure({ XRegExp });
const fullName = xre`/(?<firstName>\p{Letter}+)\s(?<lastName>\p{Letter}+)/i`;
console.log(fullName.exec('Shit Ass').firstName);
// → Shit
console.log(fullName.exec('Говно Жопа').firstName);
// → Говно
console.log(fullName.exec('くそ けつ').firstName);
// → くそ
All built-in RegExp
's methods and properties is fully supported,
so you can use xre
regular expressions as an argument
for String
's methods such as replace
or match
.
exec
Arguments:
string: string
— string to search.position: number = lastIndex
— zero-based index at which to start the search.sticky: boolean | string = false
— whether the match must start at the specified position only.
The string 'sticky'
is accepted as an alternative to true
.Returns:
null
.See also:
test
Arguments:
Xre#exec
method arguments.See also:
Non-standard methods are derived from XRegExp's ones, but does not take regexp argument.
addToken
(see XRegExp docs for addToken()
method).forEach
(see XRegExp docs for forEach()
method).globalize
(see XRegExp docs for globalize()
method).match
(see XRegExp docs for match()
method).replace
(see XRegExp docs for replace()
method).split
(see XRegExp docs for split()
method).configure
Arguments:
options
:
XRegExp
— XRegExp constructor.$ yarn run lint
$ yarn run test
FAQs
Template string tag for XRegExp.
We found that xre demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Research
/Security News
Malicious update to @ctrl/tinycolor on npm is part of a supply-chain attack hitting 40+ packages across maintainers
Security News
pnpm's new minimumReleaseAge setting delays package updates to prevent supply chain attacks, with other tools like Taze and NCU following suit.
Security News
The Rust Security Response WG is warning of phishing emails from rustfoundation.dev targeting crates.io users.