Skip to content

Commit ea8a75a

Browse files
committed
Readme updated
1 parent 604ccdb commit ea8a75a

File tree

1 file changed

+4
-24
lines changed

1 file changed

+4
-24
lines changed

README.md

Lines changed: 4 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# eloquent-regex
22

3-
Eloquent Regex brings the simplicity and elegance of Laravel's Eloquent ORM to regular expressions. Designed for Laravel developers, this package offers a fluent, intuitive interface for building and executing regex patterns in your PHP applications. Streamline your pattern matching with an eloquent touch.
3+
Eloquent Regex brings the simplicity and elegance to regular expressions. Designed for Laravel developers, this package offers a fluent, intuitive interface for building and executing regex patterns in your PHP applications.
44

55
#### Adding new options
66

@@ -24,29 +24,7 @@ Examples: `->exact("hello world", false, "1+")`
2424

2525
##### To Do
2626

27-
- Make patterns dynamic ✔️
28-
- Add commonly used patterns & tests ✔️
29-
- Default arguments and allow to use any other option beside args ✔️
30-
- Add FilePath and DirectoryPath patterns for different OS ✔️
3127
- Add needed options for new patterns:
32-
- specialCharacters (min, max) ✔️
33-
- onlyLowercase, onlyUppercase ✔️
34-
- Is file (ends with .[format]) ✔️
35-
- Is directory ✔️
36-
- fileExists ✔️
37-
- fileExtension: Specify certain file extensions (e.g., .txt, .pdf) ✔️
38-
- specificCurrencies: Match only specific currency symbols.✔️
39-
- relativePath, absolutePath: Specify if the path should be relative or absolute.✔️
40-
- countryCode: Match phone numbers with specific country codes. ✔️
41-
- specialCharacters: Allow or disallow special characters. ✔️
42-
- containSpaces: Allow or disallow spaces. ✔️
43-
- domainSpecific: Limit email addresses to specific domains.✔️
44-
- domainExtension: Restrict to certain domain extensions.✔️
45-
- protocolSpecific: Limit URLs to specific protocols (e.g., http, https). ✔️
46-
- cardType: Restrict to specific card types (e.g., Visa, MasterCard). ✔️
47-
- onlyAlphanumeric: Restrict to alphanumeric characters only. ✔️
48-
- SpecificTags (HtmlTagPattern): To allow or restrict specific HTML tags.✔️
49-
- RegexFlags: To allow users to set global regex flags (like case-insensitivity, multiline, etc.). ✔️ (_Added not as option, but in Builder and basePattern_)
5028
- usernameLength: Set minimum and maximum length for the username part of the email.
5129
- dateFormat, timeFormat: Specify the format of date and time (e.g., MM-DD-YYYY, HH:MM).
5230
- Consider to register Patterns like options using key (name) => value (class) pairs (check performance) ✔️ (_No significant change before 50+ patterns_)
@@ -73,10 +51,12 @@ Examples: `->exact("hello world", false, "1+")`
7351
- "string" and "source" for builder start
7452
- "start" and "pattern" for builderPattern start
7553
- Write documentation (add credit for https://regexr.com/ and ChatGPT)
54+
- Add automated tests on PR creation or on marging to main branch
55+
56+
##### Coming next
7657

7758
- Implement string resolver pattern to use strings like "text(2)-digits()" (or "text:2-digits", or "text|2-digits") as pattern
7859
- Implement recursive pattern creation (Using "RI-321" string to create pattern matching this string)
79-
8060
- Consider to add Postal Code Pattern
8161
- Make options controllable from config or provider (?)
8262
- Make pattern controllable from config or provider (?)

0 commit comments

Comments
 (0)