Expression |
^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$ |
---|---|
Description |
Tests for valid HTML hexadecimal color codes. The # symbol is optional. And it will except either the 3 digit form for the 216 Web safe colors, or the full 6 digit form. I am use it on my site to allow users to customize the site's colors. |
Matches |
#00ccff | #039 | ffffcc |
Non-Matches |
blue | 0x000000 | #ff000 |
Expression |
\b(([01]?\d?\d|2[0-4]\d|25[0-5])\.){3}([01]?\d?\d|2[0-4]\d|25[0-5])\b |
---|---|
Description |
Most Concise RegExp for matching Decimal IPs. If nothing else, it'll make your code easier to read. (And I know that \d?\d is \d{1,2} but that's 2 extra characters.) --Update: darkone noticed 8 characters could be shaved down. I've edited it to reflect this. Thanks, darkone! |
Matches |
217.6.9.89 | 0.0.0.0 | 255.255.255.255 |
Non-Matches |
256.0.0.0 | 0978.3.3.3 | 65.4t.54.3 |
Expression |
^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$ |
---|---|
Description |
This is a pattern to search and verify that a decimal number ends with a 25, 50, 75, 0 or 00. It does match for a nothing after decimal also but I guess thats ok !! |
Matches |
0.25 | .75 | 123.50 |
Non-Matches |
.77 | 1.435 |
Expression |
^\d{0,2}(\.\d{1,2})?$ |
---|---|
Description |
This regular expression validates that the data entered is a number with a maximum of two integers and two decimals and a minimum of one integer or one decimal. |
Matches |
99.99 | 99 | .99 |
Non-Matches |
999.999 | 999 | .999 |
Expression |
^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$ |
---|---|
Description |
This will grep for a valid MAC address , with colons seperating octets. It will ignore strings too short or long, or with invalid characters. It will accept mixed case hexadecimal. Use extended grep. |
Matches |
01:23:45:67:89:ab | 01:23:45:67:89:AB | fE:dC:bA:98:76:54 |
Non-Matches |
01:23:45:67:89:ab:cd | 01:23:45:67:89:Az | 01:23:45:56: |
Expression |
(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$ |
---|---|
Description |
This regular expression validates a number NOT 0, with no more than 5 places ahead and 3 places behind the decimal point. |
Matches |
1 | 12345.123 | 0.5 |
Non-Matches |
0 | 0.0 | 123456.1234 |
Expression |
^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$ |
---|---|
Description |
A regular expression that matches numbers. Integers or decimal numbers with or without the exponential form. |
Matches |
23 | -17.e23 | +.23e+2 |
Non-Matches |
+.e2 | 23.17.5 | 10e2.0 |
Expression |
^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$ |
---|---|
Description |
This is permit all decimal number, exclude all alphanumeric caracter |
Matches |
123456.123456 | 123456,123456 | 123456 |
Non-Matches |
123a.123 | 123a,123 | a |
Expression |
(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$) |
---|---|
Description |
Accepts only positive decimal values. Zero and negatvie numbers are non-matching. Allows zeros after last non-zero numeric value after decimal place for significant digits. |
Matches |
0.050 | 5.0000 | 5000 |
Non-Matches |
0 | 0.0 | .0 |
Expression |
^\s*(?'num'\d+(\.\d+)?)\s*(?'unit'((w(eek)?)|(wk)|(d(ay)?)|(h(our)?)|(hr))s?)(\s*$) |
---|---|
Description |
Validates Microsoft Project-type duration entries. Accepts a number and a unit. The number part can be integer or decimal. The unit can be several variations of weeks, days, and hours: e.g., w, wk, week, ws, wks, weeks are all valid. Whitespace between the number and the unit is optional: e.g., 1d, 2 days, 3.5w are all valid. Captures the number value in a group named num and the unit string in a group named 'unit'. |
Matches |
1 day | 3.5 w | 6hrs |
Non-Matches |
1 | 6. days | 1 week 2 d |
Expression |
[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} |
---|---|
Description |
Very Simple Match for dotted Decimal IP address. Doesn’t Validate addresses |
Matches |
192.168.1.1 | 10.2.234.1 | 66.129.71.122 |
Non-Matches |
192.168.1 | 10.2.1234.1 | 66 129 71 122 |
Expression |
^\s*(((\d*\.?\d*[0-9]+\d*)|([0-9]+\d*\.\d*) )\s*[xX]\s*){2}((\d*\.?\d*[0-9]+\d*)|([0-9]+\d*\.\d*))\s*$ |
---|---|
Description |
This validates Length times Width times Height measurements, which consists of 3 whole or decimal numbers separated by an x. |
Matches |
1.1 x 4.35 x 5.0 | 1 x 2 x 3 | 4.75 x 300.25 x 0 |
Non-Matches |
z.56 x 6 x 7 | 1 xx 2 x 3 | 1 by 2 by 3 |
Expression |
^[-]?([1-9]{1}[0-9]{0,}(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|\.[0-9]{1,2})$ |
---|---|
Description |
This regular expression will match on a real / decimal / floating point / numeric string with no more than 2 digits past the decimal. The negative sign (-) is allowed. No leading zeroes or commas. It is based on a currency regular expression by Tom Persing. |
Matches |
123 | 123.54 | -.54 |
Non-Matches |
123.543 | 0012 | 1,000.12 |
Expression |
^\d+(?:\.\d{0,2})?$ |
---|---|
Description |
Matches positive whole numbers with exactly zero or two decimal points if a . is present. Useful for checking currency amounts, such 5 or 5.00 or 5.25. |
Matches |
1 | 1.23 | 1234.45 |
Non-Matches |
a1.34 | 1.23a | a |
Expression |
^(?:(?:25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)(?(?=\.?\d)\.)){4}$ |
---|---|
Description |
Regular expression for validating a decimal IP address. Matches 4 groups of from 1 to 3 digits, where each group of digits ranges from 0 to 255 in value. Groups of digits must be separated by a single period (.) with no other formatting characters present. Uses conditional regex with lookahead syntax to prevent a match on a period following the final group of digits. |
Matches |
217.6.9.89 | 0.0.0.0 | 255.255.255.255 |
Non-Matches |
256.0.0.0 | 0127.3 | 217.6.9.89. |
Expression |
(?n:(^\$?(?!0,?\d)\d{1,3}(?=(?<1>,)|(?<1>))(\k<1>\d{3})*(\.\d\d)?)$) |
---|---|
Description |
Regular expression for validating a US currency string field. Matches an unlimited number of digits to the left of an optional decimal point. Digits to the left of the decimal point can optionally be formatted with commas, in standard US currency format. If the decimal point is present, it must be followed by exactly two digits to the right. Matches an optional preceding dollar sign. Uses regex lookahead to preclude leading zeros and to match the optional formatting comma. |
Matches |
$3,023,123.34 | 9,876 | 123456.78 |
Non-Matches |
0.002 | $01.00 | ###1.00 |
Expression |
^(((\d{1,3})(,\d{3})*)|(\d+))(.\d+)?$ |
---|---|
Description |
validates numbers, with or without decimal places, and comma 1000 separators. |
Matches |
9999999 | 99999.99999 | 99,999,999.9999 |
Non-Matches |
9999. | 9,99,99999.999 | 999.9999.9999 |
Expression |
(^N/A$)|(^[-]?(\d+)(\.\d{0,3})?$)|(^[-]?(\d{1,3},(\d{3},)*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{1,3})?)$) |
---|---|
Description |
This pattern matches a decimal value with up to 3 digits after the decimal. Comma is allowed as a thousands separator but not required. N/A is also allowed. |
Matches |
405.234 | 50 | 213123.456 | -1 | N/A |
Non-Matches |
bathreader | this is N/A | 3.14159 | +10 |
Expression |
^[0-9]*[1-9]+$|^[1-9]+[0-9]*$ |
---|---|
Description |
This Expression checks if the value is an integer, positive, not zero and not a decimal. Very handy for use when people need to fill in whole numbers, like when ordering car parts on a website (you dont want your customers to order -10 tires or 0.7 mirrors.. |
Matches |
1 | 00000428123 | 1230000 |
Non-Matches |
0 | 00000000 | any text or +, - or any other character |
Expression |
^(\-)?\d*(\.\d+)?$ |
---|---|
Description |
Matches all positive decimal floating negative/non-negative numbers. Allows empty string. |
Matches |
0.55 | 21232.00 | -89.20 |
Non-Matches |
asdf | +0.33 |
Expression |
(?=([\W]*[\w][\W]*\b))\s(?=\d\.|\d\b) |
---|---|
Description |
This RegExp matches a space (" ") character with lookahead condition if there is an ASCII text in front of it and it is followed by a single decimal number which in turn is followed by a dot or nothing. It's useful to seperate scientific notation numbers from a text, i.e. when classifying with the bow toolkit. [EDIT 18.09.2004] There was indeed an error in the second lookahead. Changed |\b to |\d\b |
Matches |
ROOT 4.873624764e-34 | `1234567 890-= 3.8765e-34543 | ~! @ # $ % ^ & ( % )_+ 3.345e-2384754 |
Non-Matches |
rstuvwxyz 754.234e-23 | yz754.234e-23 | yz .234e-23 |
Expression |
^\s*-?(\d*\.)?([0-2])?[0-9]:([0-5])?[0-9]:([0-5])?[0-9](\.[0-9]{1,7})?\s*$ |
---|---|
Description |
This should be the pattern described in the documentation for the .NET TimeSpan.Parse method - generally parses time spans. From the .NET docs: public static TimeSpan Parse(string s); The s parameter contains a specification of the form: [ws][-][d.]hh:mm:ss[.ff][ws] Items in square brackets ([ and ]) are optional, colons and periods (: and .) are literal characters, and other items are as follows. Item Description ws optional white space "-" optional minus sign indicating a negative time "d" optional days "hh" hours, ranging from 0 to 23 "mm" minutes, ranging from 0 to 59 "ss" seconds, ranging from 0 to 59 "ff" optional fractional seconds, from 1 to 7 decimal digits |
Matches |
10:12:34 | 932323.9:00:32.3420 |
Expression |
(?:(?:(?<Feet>\d+)[ ]*\'){0,1}[ ]*(?<WholeInches>\d*(?![/\w])){0,1}(?:[ ,\-]){0,1}(?<Fraction>\d*\/\d*){0,1}(?<Decimal>\.\d*){0,1}\")|(?:(?<Feet>\d+)[ ]*\'[ ]*){1} |
---|---|
Description |
I needed an expression to extract measurements from text to extract steel sizes from product descriptions, and I came up with this. It will only match on measurements that have complete dimensions (i.e. measurements with foot and inch marks in the positions you'd expect them). My personal experience required that I also be a little lax and allow measurements such as: .125 (for wall thicknesses and sheet metal thicknesses) with no inch marks. You can accomplish this by including: |(?<Decimal>\.\d{3}\"*) to the end of the expression Hope it helps you. |
Matches |
1/4" x 2.125" Flat 44W x 20'3.5" | 1/8" x 4" C-1018 flat x 14' 5-1/4" |
Non-Matches |
44W | 8 @ 21 W.F. beam | 1/4 x 2.125 Flat 44W x 20 |
Expression |
^\s*(\d{0,2})(\.?(\d*))?\s*\%?\s*$ |
---|---|
Description |
Basically this matches into variables for percentages.. It allows as much whitespace before and after the expression. $1 = Percent before decimal, $2 = percentage after decimal inc decimal, $3 = percentage after decimal. Disallowed anything past 99.99999 repeating percent. No negative percents either. Easy to implement but I do not need it. |
Matches |
10.5%, 1%, 1, .5, .0555% |
Non-Matches |
100%, -1%, -1, 200, 200.1 |
Expression |
^[-+]?(\d?\d?\d?,?)?(\d{3}\,?)*(\.?\d+)$ |
---|---|
Description |
This pattern matches decimal values. It supports option leading positive or negative symbols. Supports commas where only the leading group can have less than three numbers. |
Matches |
+1.0 | -3 | 1,234.00 | 1,234,567 |
Non-Matches |
A | 1,23 | 1,23,456 |
Expression |
^[\+\-]?[0-9]+([\,\.][0-9]+)?$ |
---|---|
Description |
Accepts integer and decimal numbers, the decimal delimiter beeing either a point or a comma, prefixed or not by a plus or minus sign. |
Matches |
«1» «-1» «+1» «1.0» «-1.0» «+1.0» «1,0» «-1,0» «+1,0» |
Non-Matches |
«abc» «1e2» |
Expression |
^\$?(([1-9],)?([0-9]{3},){0,3}[0-9]{3}|[0-9]{0,16})(\.[0-9]{0,3})?$ |
---|---|
Description |
Currency expression, accepts 4 commas and 4 groups of 3 numbers and 1 number before the first comma, this first number will have to be different from zero. It accepts a number of, two or three decimal. It accepts zero numbers after the point. You can change the number of groups and numbers accespts before and after the point. |
Matches |
1234.23 | 1,234.245 | 1. |
Non-Matches |
12,12,0.00 | 0,123.99 |
Expression |
^[0-9]%?$|^1[0-9]%?$|^2[0-9]%?$|^3[0-5]%?$|^[0-9]\.\d{1,2}%?$|^1[0-9]\.\d{1,2}%?$|^2[0-9]\.\d{1,2}%?$|^3[0-4]\.\d{1,2}%?$|^35%?$ |
---|---|
Description |
A range of numbers 0-35 optionally including a percent sign and 2 position decimal. |
Matches |
32.34%, 32.34, 32, 32% |
Non-Matches |
32.345%, 36, .34 |
Expression |
^([-+]?(\d+\.?\d*|\d*\.?\d+)([Ee][-+]?[0-2]?\d{1,2})?[r]?|[-+]?((\d+\.?\d*|\d*\.?\d+)([Ee][-+]?[0-2]?\d{1,2})?)?[i]|[-+]?(\d+\.?\d*|\d*\.?\d+)([Ee][-+]?[0-2]?\d{1,2})?[r]?[-+]((\d+\.?\d*|\d*\.?\d+)([Ee][-+]?[0-2]?\d{1,2})?)?[i])$ |
---|---|
Description |
DESCRIPTION Parses a complex number of kind 'a+bi' from an input string. Please remove all spaces from the input string before using this regex pattern. MATCHING EXAMPLES '[]' means is an optional parameter; '|' means OR; '+' is the positive sign; '-' is the negative sign; '#' is one ore more decimal digits; 'E|e' are the valid exponent symbols; '...' is the range for the exponent; 'r' means the real part of complex number; 'i' means the imaginary part of complex number. NOTE Has the imaginary part of the input string not a numeric value (e.g. '5-i' is a valid format) it should be interpreted as '5-1i'! |
Matches |
[+|-]#[.[#]]|[#].#[E|e[+|-]0...299][r] -OR- [+|-][#[.[#]]|[#].#[E|e[+|-]0...299]]i -OR- [+|-]#[.[#]]|[#].#[E|e[+|-]0...299][r]+|-[#[.[#]]|[#].#[E|e[+|-]0...299]]i |
Non-Matches |
[+|-][.][E|e[+|-][0...299]][r] -OR- [+|-].[E|e[+|-][0...299]]i -OR- [+|-][.][E|e[+|-][0...299]][r]+|-[#[.[#]]|[#].#[E|e[+|-][0...299]]]i -OR- any number with more than one sign or decimal seperator -OR- any string with non-leading signs on mantissa and on exponent |
Title | Test Details Floating Number |
---|---|
Expression |
^([-+]?(\d+\.?\d*|\d*\.?\d+))$ |
Description |
DESCRIPTION Parses a floating number (such as double or float) from an input string. Please remove all spaces from the input string before using this regex pattern. MATCHING EXAMPLES The following symbols are used: '[]' means optional parameter; '|' means OR; '+' is the positive sign; '-' is the negative sign; '#' means one or more decimal digits; '.' is decimal seperator. |
Matches |
[+|-]#[.[#]]|[#].# |
Non-Matches |
[+|-][.] -OR- any floating number with an exponent (e.g. 1.0E-8) -OR- any string with more than one sign or decimal seperator -OR- any string with non-leading sign |
Title | Test Details Floating Number With Exponent |
---|---|
Expression |
^([-+]?(\d+\.?\d*|\d*\.?\d+)([Ee][-+]?[0-2]?\d{1,2})?)$ |
Description |
DESCRIPTION Parses a floating number with an optional exponent from an input string. Please remove all spaces from the input string before using this regex pattern. MATCHING EXAMPLES The following symbols are used: '[]' means an optional parameter; '|' means OR; '+' means the positive sign; '-' means the negative sign; '#' means one or more numbers (0...9); '.' is the decimal seperator; 'E|e' are the valid exponent symbols; '...' is the range of values for the exponent. |
Matches |
[+|-]#[.[#]]|[#].#[E|e[+|-]0...299] |
Non-Matches |
[+|-][.][E|e[+|-][0...299]] -OR- [+|-]#[.[#]]|[#].#E|e[+|-]300...∞ -OR- any string with more than one sign on mantissa or on exponent -OR- any string with non-leading signs on mantissa or exponent -OR- any string with more than one decimal seperator on mantissa | any string with one or more decimal seperators on exponent |
Title | Test Details All valid Guid(s) |
---|---|
Expression |
[({]?(0x)?[0-9a-fA-F]{8}([-,]?(0x)?[0-9a-fA-F]{4}){2}((-?[0-9a-fA-F]{4}-?[0-9a-fA-F]{12})|(,\{0x[0-9a-fA-F]{2}(,0x[0-9a-fA-F]{2}){7}\}))[)}]? |
Description |
It matches all strings that the .NET Framework API "new Guid(string guid)" can recognize. A String that contains a GUID in one of the following formats ('d' represents a hexadecimal digit whose case is ignored): |
Matches |
ca761232ed4211cebacd00aa0057b223 | CA761232-ED42-11CE-BACD-00AA0057B223 | {CA761232-ED42-11CE-BACD-00AA0057B223} | (CA761232-ED42-11CE-BACD-00AA0057B223) | {0xCA761232,0xED42,0x11CE,{0xBA,0xCD,0x00,0xAA,0x00,0x57,0xB2,0x23}} |
Non-Matches |
Invalid guids |
Title | Test Details Colon-delimited string of positive integers and/or decimal numbers |
---|---|
Expression |
^(([1-9][0-9]*)|((([0])|([1-9][0-9]*))\.[0-9]+)|((([1-9][0-9]*)|((([0])|([1-9][0-9]*))\.[0-9]+))\:)*(([1-9][0-9]*)|((([0])|([1-9][0-9]*))\.[0-9]+)))$ |
Description |
Accepts a colon-delimited string of positive integers and/or decimal numbers in any combination. Spaces are not permitted. Decimal numbers of less than 1 must be prefixed with a zero (e.g. accepts 0.1, but not .1), and numbers with a trailing decimal point are not accepted (e.g. accepts 3.0, but not 3.). A lone zero is not accpeted (e.g. accepts 1.02:3:4.5, but not 1.02:0:4.5). Developed from a similar expression by Steven Smith on this site. |
Matches |
1.2 | 0.1:0.5:56:6.70 | 3:6.78954:1:2:3 |
Non-Matches |
0.1:.5:56 | -6.70:3. | 5: 0.1:0 |
Title | Test Details Currency with two decimals |
---|---|
Expression |
^\$\d{1,3}(,?\d{3})*(\.\d{2})?$ |
Description |
Looks for a number which can be optionally comma separated at thousands and may or may not have two decimal places. Tweaking: 1. Replace the \$ symbol with your currency. 2. Toggle , and . as separators (Some European countries follow this convention) 3. Mandate comma separation by removing the ? after , |
Matches |
$333,444,444,555.99 |
Non-Matches |
$333,444,444,55 |
Title | Test Details HTML HEX Characters codes |
---|---|
Expression |
&#x((?=.*[ABCDEF]))*((?=.*[0-9]))*.{2,5}; |
Description |
This pattern matches any HTML character code in hexadecimal format. Doesn't match numerical code such as &#203; or any friendly code character such as &nbsp; |
Matches |
&#x1DE; &#x111; &#xCA; |
Non-Matches |
&#203; &Ecirc; |
Title | Test Details Metric and Time Dimensions |
---|---|
Expression |
(?<Nbr>[\+-]?((\d*\,\d+)|(\d*\.\d+)|\d+))\s*(?<Unit>mm|cm|dm|min|km|s|m|h) |
Description |
Matches decimal numbers (english or german writing) followed by metric or time units (mm, cm, dm, m, km, s, min and h) in labels surrounded by any digit. |
Matches |
345,3m, 345.m, 345m, 345,5 m |
Title | Test Details Decimal Number |
---|---|
Expression |
^([1-9]([0-9])?)(\.(([0])?|([1-9])?|[1]([0-1])?)?)?$ |
Description |
Expression to match decimal number with 2 digits. |
Matches |
1.0, 1.1 .. 1.11 ... 99.0, 99.1, 99.2, ... 99.11 |
Non-Matches |
0, 0.0. 0.11, 99.12, 1.12, 100, 100.11 |
Title | Test Details Feet-inch to Decimal |
---|---|
Expression |
(?:(?:(?<Feet>\d+)[ ]*(?:'|ft)){0,1}[ ]*(?<Inches>\d*(?![/\w])){0,1}(?:[ ,\-]){0,1}(?<Fraction>(?<FracNum>\d*)\/(?<FracDem>\d*)){0,1}(?<Decimal>\.\d*){0,1}(?:\x22| in))|(?:(?<Feet>\d+)[ ]*(?:'|ft)[ ]*){1} |
Description |
I needed an expression that would break down a written measurement, like 12' 2-15/16", into groups of feet, inches, fractional inches (num/dem). This is a modified expression based on Trevor Braun's orginal regex. Added the "ft" & "in" suffixes and the fraction's Numerator & Denominator groups. |
Matches |
1ft 2-3/4 in, 2' 3 4/5", 3ft, 4', 5 in, 6", 7.125 in, 3ft 4.5 in |
Title | Test Details Decimals with optional positive/negative sign, miles separator (,) and exponential notation |
---|---|
Expression |
/^[-+]?((\d*|((\d{1,3})?,(\d{3},)*(\d{3})))?)(\.\d*)?([eE][-+]\d+)?$/ |
Description |
Valids decimal numbers with optional support for: 1.- Use a positive/negative sign (123.78 -123.09 +0.123 are valid) 2.- Use a miles separator (12345.789 12,345.099 +12,345 are valid) 2.- Use a exponential notation (+0.123E+4 -12.345e-4 are valid) |
Matches |
123.78 -123.09 +0.123 12345.789 12,345.099 +0.123E+4 |
Non-Matches |
56,88 12e3 09,98.99 |
评论