Posted By

adrianparr on 05/10/10


Tagged

format split postcode as3 substring uk


Versions (?)

Who likes this?

1 person have marked this snippet as a favorite

tspitzr


AS3 Format a UK Postcode (eg. AA99 9AA)


 / Published in: ActionScript 3
 

URL: http://en.wikipedia.org/wiki/Postcodes_in_the_United_Kingdom

This code removes all the spaces and then inserts a single space so that the there are only 3 characters on the right-hand side (the inward code).

  1. var inputPostcode:String = " e c 1 r 5 d w ";
  2. trace("inputPostcode: "+inputPostcode);
  3. var checkedPostcode:String = validateUkPostcode(inputPostcode).toUpperCase();
  4.  
  5. if (checkedPostcode == "") {
  6. trace("No valid postcode was found");
  7. } else {
  8. trace("checkedPostcode: "+checkedPostcode);
  9. }
  10.  
  11. function validateUkPostcode(str:String):String {
  12. var returnString:String;
  13. var withNoSpaces:String = str.split(" ").join("");
  14. var outwardCode:String = withNoSpaces.substring(0, withNoSpaces.length-3);
  15. var inwardCode:String = withNoSpaces.substring(withNoSpaces.length-3, withNoSpaces.length);
  16. var formatted:String = outwardCode + " " + inwardCode;
  17. str = formatted.replace(/^\s+|\s+$/g, "");
  18. var pattern:RegExp = /[A-Z]{1,2}[0-9R][0-9A-Z]? [0-9][ABD-HJLNP-UW-Z]{2}/i;
  19. var result:Object = pattern.exec(str);
  20. if(result == null) {
  21. returnString = "";
  22. } else {
  23. returnString = result[0];
  24. }
  25. return returnString;
  26. }
  27.  
  28. // OUTPUT
  29. // inputPostcode: e c 1 r 5 d w
  30. // checkedPostcode: EC1R 5DW

Report this snippet  

You need to login to post a comment.