Fancyfier.java
上传用户:huihesys
上传日期:2007-01-04
资源大小:3877k
文件大小:3k
源码类别:

WEB邮件程序

开发平台:

C/C++

  1. /* CVS ID: $Id: Fancyfier.java,v 1.3 2000/04/18 13:13:38 wastl Exp $ */
  2. package net.wastl.webmail.ui.html;
  3. import gnu.regexp.*;
  4. /*
  5.  * Fancyfier.java
  6.  *
  7.  * Created: Mon Feb 22 14:55:36 1999
  8.  *
  9.  * Copyright (C) 1999-2000 Sebastian Schaffert
  10.  * 
  11.  * This program is free software; you can redistribute it and/or
  12.  * modify it under the terms of the GNU General Public License
  13.  * as published by the Free Software Foundation; either version 2
  14.  * of the License, or (at your option) any later version.
  15.  * 
  16.  * This program is distributed in the hope that it will be useful,
  17.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  18.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  19.  * GNU General Public License for more details.
  20.  * 
  21.  * You should have received a copy of the GNU General Public License
  22.  * along with this program; if not, write to the Free Software
  23.  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  24.  */
  25. /**
  26.  * Do some fancifying with the messages. Also filters JavaScript.
  27.  *
  28.  *
  29.  *
  30.  * Created: Mon Feb 22 14:55:36 1999
  31.  *
  32.  * @author Sebastian Schaffert
  33.  * @version $Revision: 1.3 $
  34.  */
  35. public class Fancyfier  {
  36.     
  37.     public Fancyfier() {
  38.     }
  39.     private static RE[] regs=null;
  40.     private static RE uri=null;
  41.     private static String[] repls={
  42. "<IMG SRC="/images/emoticon11.gif">",
  43. "<IMG SRC="/images/emoticon12.gif">",
  44. "<IMG SRC="/images/emoticon13.gif">",
  45. "<IMG SRC="/images/emoticon14.gif">",
  46. "<IMG SRC="/images/emoticon11.gif">",
  47. "<IMG SRC="/images/emoticon12.gif">",
  48. "<IMG SRC="/images/emoticon13.gif">",
  49. "<IMG SRC="/images/emoticon14.gif">",
  50. "<IMG SRC="/images/emoticon21.gif">",
  51. "<IMG SRC="/images/emoticon22.gif">",
  52. "<IMG SRC="/images/emoticon23.gif">",
  53. "<IMG SRC="/images/emoticon24.gif">",
  54. "<IMG SRC="/images/emoticon31.gif">",
  55. "<IMG SRC="/images/emoticon32.gif">",
  56. "<IMG SRC="/images/emoticon33.gif">",
  57. "<IMG SRC="/images/emoticon34.gif">",
  58. "<IMG SRC="/images/emoticon41.gif">",
  59. "<IMG SRC="/images/emoticon42.gif">",
  60. "<IMG SRC="/images/emoticon43.gif">",
  61. "<IMG SRC="/images/emoticon44.gif">",
  62. "<IMG SRC="/images/emoticon51.gif">",
  63. "<IMG SRC="/images/emoticon52.gif">",
  64.     };
  65.     public static void init() {
  66. try {
  67.     // Smiley substitution
  68.     RE[] temp={
  69. new RE(":-\)"),
  70. new RE(":-\("),
  71. new RE(":-O"),
  72. new RE(":\)"),
  73. new RE(":\("),
  74. new RE(":O"),
  75. new RE(":\|"),
  76. new RE(";-\)"),
  77. new RE(";-\("),
  78. new RE(";-O"),
  79. new RE(";-\|"),
  80. new RE("B-\)"),
  81. new RE("B-\("),
  82. new RE("B-O"),
  83. new RE("B-\|"),
  84. new RE("%-\)"),
  85. new RE("%-\("),
  86. new RE("%-O"),
  87. new RE("%-\|"),
  88. new RE(":-X"),
  89. new RE("\}:->")
  90.     };
  91.     regs=temp;
  92.     // Link highlighting
  93.     //uri=new RE("http\:\/\/(.+)(html|\/)(\S|\-|\+|\.|\|\:)");
  94. } catch(Exception e) {
  95.     e.printStackTrace();
  96. }
  97.     }
  98.     public static String apply(String s) {
  99. if(regs==null) {
  100.     init();
  101. }
  102. String retval=s;
  103. for(int i=0;i<regs.length;i++) {
  104.     retval=regs[i].substituteAll(retval,repls[i]);
  105. }
  106. return retval;
  107.     }
  108.     
  109. } // Fancyfier