| 广告招租,e-mail:yesize@hotmail.com
|
|
广告招租,e-mail:yesize@hotmail.com
<% ***** BEGIN FUNCTION AREA ***** Formats a given 10 digit number into a nice looking phone number Example: given strNumber of 8005551212 you get (800) 555-1212 Function FormatPhoneNumber(strNumber) Dim strInput String to hold our entered number Dim strTemp Temporary string to hold our working text Dim strCurrentChar Var for storing each character for eval. Dim I Looping var Uppercase all characters for consistency strInput = UCase(strNumber) To be able to handle some pretty bad formatting we strip out all characters except for chars A to Z and digits 0 to 9 before proceeding. I left in the chars for stupid slogan numbers like 1-800-GET-CASH etc... For I = 1 To Len(strInput) strCurrentChar = Mid(strInput, I, 1) Numbers (0 to 9) If Asc("0") <= Asc(strCurrentChar) And Asc(strCurrentChar) <= Asc("9") Then strTemp = strTemp & strCurrentChar End If Upper Case Chars (A to Z) If Asc("A") <= Asc(strCurrentChar) And Asc(strCurrentChar) <= Asc("Z") Then strTemp = strTemp & strCurrentChar End If Next I Swap strTemp back to strInput for next set of validation I also clear strTemp just for good measure! strInput = strTemp strTemp = "" Remove leading 1 if applicable If Len(strInput) = 11 And Left(strInput, 1) = "1" Then strInput = Right(strInput, 10) End If Error catch to make sure strInput is proper length now that weve finished manipulating it. If Not Len(strInput) = 10 Then Handle errors as you see fit. This script raises a real error so you can handle it like any other runtime error, but you could also pass an error back via the functions return value or just display a message... your choice! Err.Raise 1, "FormatPhoneNumber function", _ "The phone number to be formatted must be a valid 10 digit US phone number!" Two alternative error techniques! Response.Write "<B>The phone number to be formatted must be a valid phone number!</B>" Response.End Note if you use this youll also need to check for this below so you dont overwrite it! strTemp = "<B>The phone number to be formatted must be a valid phone number!</B>" End If If an error occurred then the rest of this wont get processed! Build the output string formatted to our liking! (xxx) xxx-xxxx strTemp = "(" "(" strTemp = strTemp & Left(strInput, 3) Area code strTemp = strTemp & ") " ") " strTemp = strTemp & Mid(strInput, 4, 3) Exchange strTemp = strTemp & "-" "-" strTemp = strTemp & Right(strInput, 4) 4 digit part Set return value FormatPhoneNumber = strTemp End Function ***** END FUNCTION AREA ***** %> <% Runtime Code Dim strNumberToFormat The phone number we pass to the function Retrieve the requested number or set it to the default If Request.QueryString("phone_number") <> "" Then strNumberToFormat = Request.QueryString("phone_number") Else strNumberToFormat = "1-800-555-1212" End If We need to turn this on if we want to trap errors. Otherwise the script would generate an error if the input number wasnt correct. On Error Resume Next %> <TABLE BORDER="1"> <TR> <TD>Phone number before formatting:</TD> <TD><%= strNumberToFormat %></TD> </TR> <TR> <TD>Phone number after formatting:</TD> <TD> <% Call the function and output the results Response.Write FormatPhoneNumber(strNumberToFormat) Check for an error and display the message if one occurred If Err.number Then Response.Write Err.description %> </TD> </TR> </TABLE> <FORM ACTION="39.asp" METHOD="get"> Phone number to format: <INPUT TYPE="text" NAME="phone_number" VALUE="<%= strNumberToFormat %>"> <INPUT type="submit" value="Submit"> </FORM>
版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com |
|