Keywords: regular expression pattern matching JavaScript
Summary: Collect some common regular expressions.
Regular expressions are used in string processing, form verification, etc., practical efficient, but it is always not sure to use it, so that I often check it online. I put some commonly used expressions here and make a memo. This post will be updated in any time.
Regular expressions matching Chinese characters: [/ u4e00- / u9fa5]
Match double-byte characters (including Chinese characters): [^ / X00- / XFF]
Application: Calculate the length of the string (a double-byte character length 2, ASCII characters 1)
String.prototype.len = function () {return this.Replace ([^ / X00- / XFF] / g, "aa"). Length;}
Regular expression of matching blank line: / n [/ s |] * / r
Matching the regular expression of HTML tag: / <(. *)>. * // 1> | <(. *) //> /
Regular expressions matching the first tail space: (^ / s *) | (/ s * $)
Application: There is no TRIM function like VBScript in JavaScript, we can use this expression to be implemented, as follows:
String.prototype.trim = function () {Return this.Replace (/ (^ / s *) | (/ s * $) / g, "");
Using regular expressions to decompose and convert IP addresses:
Below is the JavaScript program that uses the regular expression to match the IP address and convert the IP address into the corresponding value:
Function IP2V (IP) {RE = / (/ d ) /. (/ d ) /. (/ d ) /. (/ d ) / g // Match the regular expression IF of the IP address (Re.Test (IP) $ 1 * Math.Pow (255, 3)) Regexp. $ 2 * Math.Pow (255, 2)) Regexp. $ 3 * 255 regexp. $ 4 * 1} else {throw new error (" Not a valid ip address! ")}}
However, the above program does not use a regular expression, and directly use the SPLIT function to decompose may be simpler, the program is as follows:
VAR IP = "10.100.20.168" IP = IP.Split (".") Alert ("IP value is:" (IP [0] * 255 * 255 * 255 IP [1] * 255 * 255 IP [ 2] * 255 IP [3] * 1))
Match the regular expression of the email address: / w ([- .] / W ) * @ / w ([-.] / W ) * /. / W ([-.] / W ) *
Matching URL URL regular expressions: http: // ([/ w-] /.) [/ W-] (/ [/ w- ./?%&=]*)?
Algorithm program that uses regular expressions to remove repeated characters in strings
: [Note: This procedure is incorrect, the reason is seen in this Post Reply]
Var s = "AbacaFgeeii" var s1 = s.Replace (/( (.). "$ 1") VAR RE = New Regexp ("[" S1 "]", "G") VAR S2 = S.Replace (re, ") ALERT (S1 S2) / / The result is: Abcefgi I originally posted a way to find an expression on 9CBS to implement the method of removing the repeating character, and I didn't find it, this is what I can think of. The simplest implementation method. The idea is to use the retrieval to remove the repeated characters, and then establish a second expression with a duplicate character, take the non-repetitive character, and the two are connected. This method may not apply for a string that requires the character sequence. You have to extract the JavaScript program of the file name from the URL address using a regular expression. The following results are page1
S = "http://www.9499.net/page1.htm" s = s.Replace (/ (//) {0,} ([^ /.] ). * / ig, "$ 2" Alert (s)
Use the regular expression to limit the text box in the text box in the web form:
Use the regular expression restrictions can only be entered in Chinese: οNKEYUP = "value = value.replace (/ [^ / U4E00- / U9FA5] / g, '')" onbeforepaste = "ClipboardData.SetData ('Text', ClipboardData.Getdata) 'Text'). Replace (/ [^ / U4E00- / U9FA5] / g, '')) "
Use the regular expression to limit only full-width characters: οnkeyup = "value = value.replace (/ [^ / uff00- / uffff) / g, ')" onbeforepaste = "clipboardData.setdata (' Text ', ClipboardData.Getdata) ('text'). Replace (/ [^ / UFF00- / UFFFFF] / g, '')) "
Use regular expressions to limit only numbers: οnkeyup = "value = value.replace (/ [^ / d] / g, '')" onbeforepaste = "ClipboardData.SetData ('Text', ClipboardData.Getdata ('Text' ) .Replace (/ [^ / d] / g, ')) ")
Use regular expressions to limit only numbers and English: οNKEYUP = "value = value.replace (/ [/ w] / g, '')" onbeforepaste = "ClipboardData.SetData ('Text', ClipboardData.Getdata ('Text ') .Replace (/ [^ / d] / g,'))
Regular expression, related links http://blog.9cbs.net/Laily/category/19548.aspx http://blog.9cbs.net/Laily/archive/2004/06/30/30525.ASPX Microsoft's regular expression Tutorial (5): Select / Group and Back to reference http://blog.9cbs.net/LAILY/Archive/2004/06/30522.ASPX Microsoft's regular expression tutorial (4): Limits and positioning Http://blog.9cbs.net/Laily/archive/2004/06/30517.ASPX Microsoft's regular expression tutorial (3): Character match http://blog.9cbs.net/ilar/archive/ 2004/06/30 / 30514.ASPX Microsoft's Regular Expression Tutorial (2): Regular Expression Syntax and Priority Order Http://blog.9cbs.net/Laily/archive/2004/06/30511.aspx Microsoft's regular expression tutorial (1): Regular expression Introduction http://blog.9cbs.net/LAILY/Archive/2004/06/30/30360.ASPX small program As: Advanced Find / Replace, Regular Expression Exercise, JavaScript script programs http://blog.9cbs.net/LAILY/Archive/2004/06/24/25872.aspx classic regular expressions regular expressions, regular expressions, regular expressions match, regular expression Grammar, pattern matching, regular expression matching JavaScript regular expression ASP regular expression ASP.NET regular expression C # regular expression JSP regular expression PHP regular expression VB.NET regular expression VBScript regular expression program Delphi regular expression JScript Regular Expression Regular Expression Regular Expression Regexp Mode Pattern Match Match .NET Name Space: System.Text.RegularExpression
Supplement: ^ / d $ // Match non-negative integer (positive integer 0) ^ [0-9] * [1-9] [0-9] * $ // Match positive integer ^ ((- / d ) | (0 )) $ // Matching the unusual integer (negative integer 0) ^ - [0-9] * [1-9] [0-9] * $ // Matching negative integers ^ -? / D $ / / Match integer ^ / d (/./ D )? $ // Match the number of non-looted points (positive floating point 0) ^ (([0-9] /. [0-9] * [1-9] [0-9] *) | ([0-9] * [1-9] [0-9] * /. [0-9] ) | ([0-9] * [1-9] [0 -9] *)) $ // Match positive floating point number ^ ((- / D (/ d )?) | (0 (/. 0 )?)) $ // Match non-positive floating point number (negative Floating point 0) ^ ((((([0-9] /. [0-9] * [1-9] [0-9] *) | ([0-9] * [1-9] [ 0-9] * /. [0-9] ) | ([0-9] * [1-9] [0-9] *)))) $ // Matching the load point number ^ (-? / D ) (/./d )?$ // Match floating point ^ [A-ZA-Z] $ // Match string from 26 English letters ^ [AZ] $ // Match by 26 English letters String ^ [AZ] $ // composed of uppercases, matching strings consisting of 26 English letters, composed of characters composed of numbers and 26 English letters String ^ / w $ // Matching strings made of numbers, 26 English letters or underscore ^ [/ w -] (/. [/ W -] ) * @ [/ w -] (/. / w -] ) $ // Match Email Address ^ [A-ZA-Z] : // Match (/W (-/W ) * (/.(/w (-/w ) *) * (/? / S *)? $ // Match the URL to use the regular expression to remove the repeated character in the strings: var s = "abacabefgeeii" var s1 = s.Replace (/(( (.).... / g, "$ 1") VAR RE = New Regexp ("[" S1 "]", "G") var s2 = s.Replace (re, "") ALERT (S1 S2) / / Result is: ABCEFGI =============================== If var s = "abacabefggeeii" is wrong, the result is: ABEICFGG regular expression Fixed capacity
Re: Totoro Thank you, this JavaScript regular expression program algorithm has no problem, I will try to find a better way !!!
1. Verify that the code example below the effective email format Use the static regex.ismatch method to verify that a string is a valid email format. If the string contains a valid email address, the IsValideMail method returns true, otherwise returns false, but no other operations are taken. You can use IsValidemail to filter an email address that contains an invalid character before the application stores the address in the database or appears in the ASP.NET page. [Visual Basic] Function isvalideMail (STRIN As String) AS Boolean 'Return True IF STRIN IS in Valid E-mail Format. Return Regex.ismatch (Strin ("^ (" ^ ([/ w - /.] ) @ (/ [[0-9] {1,3} /. [0-9] {1,3} /. [0-9] {1,3} /.) | ([/ W -] /.) )) ([A-ZA-Z] {2, 4} | [0-9] {1,3}) (/]?) $ ") end function [c #] bool isvalidemail (string string) {////// Return True if strin is in valid e-mail format. Return Regex.ismatch (Strin, @ "^ ([/ w - /.] ) @ (/ [[0-9] {1,3} /. 0-9] {1,3} /. [0-9] {1,3} /.) | ([/ W -] /.) ))) ([A-ZA-Z] {2, 4} | [0-9] {1, 3}) (/]?) $ ");} 2. Clean the code example below the Cleanup String Using the Static Regex.Replace method to extract an invalid character from the string. You can Using the CleanInput method defined here, remove the possible harmful characters entered in the text field that accepts the user-entered form. CleanInput is cleared @, - (even character) and. (The period) all non-alphabetical numbers A string is returned after the character. [Visual Basic] Function CleanInput (Strin As String) AS String 'Replace Invalid Characters with Empty Strings. Return Regex.replace (Strin, "[^ / W /.@-]", "" " End function [c #] string cleanInput (string string) {// replace invalid characterid characters with empty strings. Return regex.replace (Strin, @ "[^ / w /.@-]", "");} 3. Change date Format The following code example uses the regex.replace method to use DD-MM-YY Date form instead of the date form of MM / DD / YY.