jRegex is a jQuery plugin which helps you build regular expressions with ease.
###How To Use
Including jRegex is very simple.
<script src="jquery.min.js"></script>
<script src="jquery.jregex.js"></script>
<script src="yourjavascript.js"></script>###What it can do (as of now)
Build a regular expression
// Create a regular expression
var exp = $.regex().whichContains("freeText","abcdefg","1+").getRegex();
alert(exp);Output:
/abcdefg{1,}/
##Documentation
###The Basics To use jRegex create a jRegex object which can be done easily by invoking:
$.regex()Now in order to create an actual regular expression begin the process of chaining methods. The regex creation methods that can be chained are:
.startingWith()
.whichContains()
.or()
.followedBy()
.onlyIfFollowedBy()
.onlyIfNotFollowedBy()
.endingIn()Finally, once all the chaining is done, you'd probably want to get the RegExp object, and this can be done by tacking one last method at the end:
.getRegex() // No arguments nessecaryA full example is below:
var gre = $.regex()
.startingWith("freeText","narc","1")
.followedBy("anyChar","","2:5")
.followedBy("anyWhitespace","","2+")
.getRegex()###The Golden Rule
Each of these methods:
.startingWith()
.whichContains()
.or()
.followedBy()
.onlyIfFollowedBy()
.onlyIfNotFollowedBy()
.endingIn()Requires 3 string variables as arguments. Nothing more, nothing less.
Thus, this is acceptable:
.startingWith("","","")Even if some strings are empty it doesn't really matter. As long as there ARE three strings present jRegex will function properly.
###The Three Arguments
These are the three string arguments that are passed into the string creation methods:
- A Specifier
- Field Text
- A Quantifier
They are passed in as followed:
.startingWith(specifier,fieldText,quantifier)####Valid Specifier Strings
These are the valid strings you can set as your specifier
"anyChar"
"anyLetter"
"anyUppercaseLetter"
"anyLowercaseLetter"
"freeText"
"anyWhitespace"
"anyDigit"####Valid Field Text
When using the freeText method, you can set the fieldText string as whatever you want to match:
.startingWith("freeText","YOU TEXT HERE","")####Valid Quantifier Strings
You quanitifer strings can be one of three kinds:
- An Explicit Number "6"
- Boundless Numbers "6+"
- Numbers between a range "6:20"
This example demonstrates:
.startingWith("anyChar","","6") // Any character exactly 6 times
.startingWith("anyChar","","6+") // Any character 6 or more times
.startingWith("anyChar","","6:20") // Any character between 6 thru 20 times###Contribute and FAQs
Right now jRegex is very small. It currently does't have support for dotall, or applying quantifiers to entire groups, or negating character classes.
These features will be implemented shortly.
If you would like to contribute please make a fork and supply your code.