Difference between revisions of "M4 Regexp Examples"
From Kolmisoft Wiki
Jump to navigationJump to search
Line 35: | Line 35: | ||
=== Regexp examples for transformation=== | === Regexp examples for transformation=== | ||
{| border="1" cellpadding=" | {| style="font-family: monospace; font-size: 13px" border="1" cellpadding="5" cellspacing="0" | ||
| ''' | | '''Transformation''' || '''Original number''' || '''Modified number''' || '''Comment''' | ||
|- | |- | ||
| ^/.*/999\1/ || Add 999 in front of any string | | /^00// || 003701234567 || 003701234567 || Cut prefix 00 | ||
|- | |||
| /^370/8/ || 370123456789 || 8123456789 || Replace 370 with 8 | |||
|- | |||
| /\+// || +370123456789 || 370123456789 || Cut + (here + is escaped by \ since it is special regex symbol) | |||
|- | |||
| /\+370/86/ || +370123456789 || 86123456789 || Cut prefix +370, add prefix 86 | |||
|- | |||
| /\+?(.*)/+\1/ || 370123456789 || +370123456789 || Add + if it is not present already | |||
|- | |||
| ^/.*/999\1/ || 370123456789 || 999370123456789 || Add 999 in front of any string | |||
|- | |||
|} | |} | ||
<br><br> | |||
= See also = | = See also = | ||
* [[M4 Source Transformation]] | * [[M4 Source Transformation]] |
Revision as of 09:10, 1 September 2023
Regexp is used to allow/deny CallerID/Destinations for Origination Points, Termination Points, and Dial Peers.
Basic Regexp operators and building blocks are explained here.
Regexp examples for matching
Regexp | Explanation |
.* | everything |
^[0-9]+$ | only digits |
^[0-9]{9,}$ | only digits, number more than 8 digits (9, 10, 11...) |
^[0-9]{0,9}$ | only digits, number less than 9 digits (1, 2, 3, 4, 5, 6, 7, 8) |
^\\+?[0-9]+$ | optional + sign and only digits |
^370[0-9]+$ | only digits starting with 370 |
^370.*$ | anything starting with 370 |
^(37[0-1]|44)[0-9]*$ | only digits starting with 370 or 371 or 44 |
^380(67|97|68|98)[0-9]*$|^998[0-9]+$ | only digits starting with 380(67,97,68,98) or 998(0-9), where 380(67,97,68,98) = 38067,38097,38068,38098 and 998(0-9) = 9980,...,9988,9989. |
^380(67|97|68|98)[0-9]{5,9}$|^998[0-9]{5,9}$ | only digits starting with 380(67,97,68,98) or 998, but number of digits after each prefix should be between 5 and 9. So, for example, 3809712345 will match, but 380971234 or 380971234567890 will NOT match. |
^370[138][0-9]+$ | only digits starting with 3701, 3703, 3708 |
Regexp examples for transformation
Transformation | Original number | Modified number | Comment |
/^00// | 003701234567 | 003701234567 | Cut prefix 00 |
/^370/8/ | 370123456789 | 8123456789 | Replace 370 with 8 |
/\+// | +370123456789 | 370123456789 | Cut + (here + is escaped by \ since it is special regex symbol) |
/\+370/86/ | +370123456789 | 86123456789 | Cut prefix +370, add prefix 86 |
/\+?(.*)/+\1/ | 370123456789 | +370123456789 | Add + if it is not present already |
^/.*/999\1/ | 370123456789 | 999370123456789 | Add 999 in front of any string |