@archoleat/reglib v1.9.0
Regex Library
Table of Contents
This library provides a collection of useful regular expressions for various use cases.
Installation
bun i -D @archoleat/reglibpnpm i -D @archoleat/reglibnpm i -D @archoleat/reglibyarn add @archoleat/reglib --devList of Regex
ATTRIBUTE_REGEX
- Pattern:
\[[^\]]+\]. - Description: Matches an attribute in square brackets.
- Example: Matches
[attr],[data-test], but not[attr or attr].
- Pattern:
CLASS_REGEX
- Pattern:
\.[a-z0-9_-]+. - Description: Matches a CSS class name starting with a dot (.).
- Example: Matches
.class,.my-class,.class_name, but notclassor.class!.
- Pattern:
BLOCK_REGEX
- Pattern:
[a-z][a-z0-9]*(-[a-z0-9]+)*. - Description: Matches a BEM block name.
- Example: Matches
block,my-block,block-name, but notBlockorblock!.
- Pattern:
ELEMENT_REGEX
- Pattern:
(__[a-z0-9]+(-[a-z0-9]+)*). - Description: Matches a BEM element name.
- Example: Matches
__element,__my-element, but notelementor__element!.
- Pattern:
MODIFIER_REGEX
- Pattern:
(--[a-z0-9]+(-[a-z0-9]+)*). - Description: Matches a BEM modifier name.
- Example: Matches
--modifier,--my-modifier, but notmodifieror--modifier!.
- Pattern:
SIBLING_REGEX
- Pattern:
(?:[^ ,{}]+\s*)?\+\s*[^ ,{}]+. - Description: Matches a sibling selector in CSS.
- Example: Matches
+ p,div + p,.class + .another-class, but notdiv > p.
- Pattern:
CHILD_REGEX
- Pattern:
(?:[^ ,{}]+\s*)?>\s*[^ ,{}]+. - Description: Matches a child selector in CSS.
- Example: Matches
> p,div > p,.class > .another-class, but notdiv + p.
- Pattern:
ATTRIBUTE_SIBLING_REGEX
- Pattern:
\[[^\]]+\]\s*\+\s*[^ ,{}]+. - Description: Matches an attribute selector followed by a sibling selector.
- Example: Matches
[attr] + div,[data-test] + .class.
- Pattern:
ATTRIBUTE_CHILD_REGEX
- Pattern:
\[[^\]]+\]\s*>\s*[^ ,{}]+. - Description: Matches an attribute selector followed by a child selector.
- Example: Matches
[attr] > div,[data-test] > .class.
- Pattern:
CLASS_SIBLING_REGEX
- Pattern:
\.[a-z0-9_-]+\s*\+\s*[^ ,{}]+. - Description: Matches a class selector followed by a sibling selector.
- Example: Matches
.class + div,.my-class + .another-class.
- Pattern:
CLASS_CHILD_REGEX
- Pattern:
\.[a-z0-9_-]+\s*>\s*[^ ,{}]+. - Description: Matches a class selector followed by a child selector.
- Example: Matches
.class > div,.my-class > .another-class.
- Pattern:
NESTED_ATTRIBUTE_SIBLING_REGEX
Pattern:
&\[[^\]]+\]\s*\+\s*[^ ,{}]+.Description: Matches a nested attribute selector followed by a sibling selector.
Example: Matches
&[attr] + div,&[data-test] + .class.
NESTED_ATTRIBUTE_CHILD_REGEX
Pattern:
&\[[^\]]+\]\s*>\s*[^ ,{}]+.Description: Matches a nested attribute selector followed by a child selector.
Example: Matches
&[attr] > div,&[data-test] > .class.
NESTED_CLASS_SIBLING_REGEX
- Pattern:
&\.[a-z0-9_-]+\s*\+\s*[^ ,{}]+. - Description: Matches a nested class selector followed by a sibling selector.
- Example: Matches
&.class + div,&.my-class + .another-class.
- Pattern:
NESTED_CLASS_CHILD_REGEX
- Pattern:
&\.[a-z0-9_-]+\s*>\s*[^ ,{}]+. - Description: Matches a nested class selector followed by a child selector.
- Example: Matches
&.class > div,&.my-class > .another-class.
- Pattern:
NESTED_ATTRIBUTE_REGEX
- Pattern:
&\[[^\]]+\]. - Description: Matches a nested attribute selector.
- Example: Matches
&[attr],&[data-test].
- Pattern:
NESTED_CLASS_REGEX
- Pattern:
&\.[a-z0-9_-]+. - Description: Matches a nested class selector.
- Example: Matches
&.class,&.my-class.
- Pattern:
FONT_FILE_NAME_REGEX
Pattern: A complex regex for matching font file names.
Description: Matches font file names based on family, weight, italic, variable, and extension.
Example: Matches
Roboto-Bold.woff2,OpenSans-Italic-Variable.ttf.More info validate-font-file-name
Contributing
Please read CONTRIBUTING to start contributing.
License
This project is licensed under the MIT license.