NPM Package Name Regex Pattern
Match valid npm package names
Live Regex Tester
Pattern Breakdown
Code Examples
JavaScript
const regex = /^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$/undefined; const test = "undefined"; console.log(regex.test(test)); // true // Extract matches const matches = test.match(regex); console.log(matches);
Python
import re pattern = r'^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$' test = "undefined" match = re.search(pattern, test) print(match) # Found!
Go
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$`)
fmt.Println(re.MatchString("undefined")) // true
}Common Use Cases
Match Examples
| Input | Result |
|---|---|
| Match | |
| No Match |
About the NPM Package Name Regex
Match valid npm package names
Regular expressions (regex) are powerful pattern matching tools used across virtually all programming languages. The npm package name pattern. It works in all major programming languages.
When using this regex, always consider edge cases and test thoroughly with real-world data. Use the interactive tester above to validate the pattern against your specific inputs before deploying to production.
Need More Regex Patterns?
Browse our complete library of 100+ regex patterns with interactive testers.
Frequently Asked Questions
What is the NPM Package Name regex pattern?
Match valid npm package names
How do I use the NPM Package Name regex?
Use the pattern /^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$/undefined in your code. In JavaScript: new RegExp('^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$', 'undefined'). Test it above with your own input.
What does this NPM Package Name regex match?
Is the NPM Package Name regex beginner-friendly?
This pattern is rated Intermediate. It uses advanced features like lookaheads, backreferences, or complex alternation.
What languages support the NPM Package Name regex?
This pattern works in all major programming languages including JavaScript, Python, Java, C#, Go, Ruby, PHP, and more. Syntax may vary slightly between regex engines.
Can I modify the NPM Package Name regex for my use case?
Yes! Use the interactive tester above to modify the pattern and test with your own data. Common modifications include making it case-insensitive (add 'i' flag), matching globally (add 'g' flag), or adjusting character classes.