javascriptはよくユーザー定義の文字列処理関数を使います.


以下はweb開発でよく使われている文字列処理関数です.
 

  
  
  
  
  1. /*  
  2.  
  3.  *   
  4.  
  5.  * @author yifangyou  
  6.  
  7.  * @use " bv ".trim()  
  8.  
  9.  * @version gslb 2011-01-16  
  10.  
  11.  * */ 
  12.  
  13. String.prototype.trim = function()  
  14.  
  15. {  
  16.  
  17.     return this.replace(/(^\s*)|(\s*$)/g, "");  
  18.  
  19. }  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. /*  
  28.  
  29.  *   
  30.  
  31.  * @author yifangyou  
  32.  
  33.  * @use " bv a".endswith("a")  
  34.  
  35.  * @version gslb 2011-01-16  
  36.  
  37.  * */ 
  38.  
  39. String.prototype.endswith = function(findstr)  
  40.  
  41. {  
  42.  
  43.     if(this.length-findstr.length<0){  
  44.  
  45.             return false;      
  46.  
  47.     }  
  48.  
  49.   if(this.lastIndexOf(findstr)==this.length-findstr.length){  
  50.  
  51.         return true;  
  52.  
  53.     }  
  54.  
  55.     return false;  
  56.  
  57. }  
  58.  
  59.  
  60.  
  61.  
  62.  
  63. /*  
  64.  
  65.  *  .-  
  66.  
  67.  * @param str input value  
  68.  
  69.  * @use <input onkeyup="value=filterchar(value)" onafterpaste="value=filterchar(value)" />  
  70.  
  71.  * @author yifangyou  
  72.  
  73.  * @version gslb 2011-01-16  
  74.  
  75.  * */ 
  76.  
  77. function filterchar(str){  
  78.  
  79.     var p=/[^\w\-\.]/g  
  80.  
  81.     return str.replace(p,'');  
  82.  
  83. }  
  84.  
  85.  
  86.  
  87. /*  
  88.  
  89.  *   
  90.  
  91.  * @param str input value  
  92.  
  93.  * @use <input onkeyup="value=filterschar(value)" onafterpaste="value=filterschar(value)" />  
  94.  
  95.  * @author yifangyou  
  96.  
  97.  * @version gslb 2011-01-16  
  98.  
  99.  * */ 
  100.  
  101. function filterschar(str){  
  102.  
  103.         var p=/[\'\"#,;&%^\$!\+=\|\\\/ ]/g  
  104.  
  105.         return str.replace(p,'');  
  106.  
  107. }  
  108.  
  109.  
  110.  
  111. /*  
  112.  
  113.  *    ,\  
  114.  
  115.  * @param str input value  
  116.  
  117.  * @use <input onkeyup="value=filterschar2(value)" filterschar2="value=filterschar2(value)" />  
  118.  
  119.  * @author yifangyou  
  120.  
  121.  * @version gslb 2011-01-16  
  122.  
  123.  * */ 
  124.  
  125. function filterschar2(str){  
  126.  
  127.         var p=/[\'\"#,;&%^\$!\+=\|\\ ]/g  
  128.  
  129.         return str.replace(p,'');  
  130.  
  131. }  
  132.  
  133.  
  134.  
  135. /*  
  136.  
  137.  *   
  138.  
  139.  * @param str input value  
  140.  
  141.  * @use <input onkeyup="value=filterchinese(value)" onafterpaste="value=filterchinese(value)" />  
  142.  
  143.  * @author yifangyou  
  144.  
  145.  * @version gslb 2011-01-16  
  146.  
  147.  * */ 
  148.  
  149. function filterchinese(str){  
  150.  
  151.         var p=/[\u4E00-\u9FA5\'\",&%^\$!\+=\|\\\/]/g  
  152.  
  153.         return str.replace(p,'');  
  154.  
  155. }  
  156.  
  157.  
  158.  
  159. /*  
  160.  
  161.  *   "_" "-"  
  162.  
  163.  * @param str input value  
  164.  
  165.  * @use <input onkeyup="value=filterschar2(value)" filterschar2="value=filterOnlyCE(value)" onafterpaste="value=filterOnlyCE(value)"/>  
  166.  
  167.  * @author yifangyou  
  168.  
  169.  * @version gslb 2011-01-16  
  170.  
  171.  * */ 
  172.  
  173. function filterOnlyCE(str){  
  174.  
  175.     var p=/[^\u4E00-\u9FA5\w\-]/g  
  176.  
  177.         return str.replace(p,'');  
  178.  
  179. }  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187. /*  
  188.  
  189.  *   
  190.  
  191.  * @param str input value  
  192.  
  193.  * @use <input onkeyup="value=filterNumeric(value)" onafterpaste="value=filterNumeric(value)" />  
  194.  
  195.  * @author yifangyou  
  196.  
  197.  * @version gslb 2011-01-16  
  198.  
  199.  * */ 
  200.  
  201. function filterNumeric(str){  
  202.  
  203.     var p=/[\D]/g  
  204.  
  205.     return str.replace(p,'');  
  206.