java过滤表情字符
『壹』 java过滤特殊字符的问题
"+"在URL中会被当作空格处理。
必须使用URLEncoder将其变成URL编码。
或者使用 javascript 的 encodeURIComponent(url) 函数对URL进行编码转换。
『贰』 java替换表情符号 求正则表达式替换
查找正则表达式
\[(微笑|撇嘴|色|发呆)\]
替换为
<img src='.../imag/$1.png'/>
Pattern.compile("\\[(微笑|撇嘴|色|发呆)\\]").matcher(text).replaceAll("<img src='.../imag/$1.png'/>")
注意replaceAll中 不知道有没有字符是 Java中需要转义的字符,如果有加上转义。
『叁』 java正则表达式过滤特殊字符
Stringregexp="[^'"%]*";
Stringstring="abc%";
System.out.println(string.matches(regexp));
『肆』 java如何判断字符串中含有表情符号
比如你需要有一组表情符号的字典:
类似String bq={"^V^","D:"};
要判断的字符串为str="^V^D:1221dsa";
然后用str.indexOf(bq[i]) 去遍历字典表
如果返回值是大于等于0的 那么就含有该表情符号
『伍』 检测文本中是否有emoji字符以及过滤
<span style="font-family: Arial, Helvetica, sans-serif;">过滤该表情</span>
[java] view plain
public static String filterEmoji(String source) {
if (!containsEmoji(source)) {
return source;// 如果不包含,直接返回
}
StringBuilder buf = null;
int len = source.length();
for (int i = 0; i < len; i++) {
char codePoint = source.charAt(i);
if (!isEmojiCharacter(codePoint)) {
if (buf == null) {
buf = new StringBuilder(source.length());
}
buf.append(codePoint);
} else {
}
}
if (buf == null) {
return "";
} else {
if (buf.length() == len) {// 这里的意义在于尽可能少的toString,因为会重新生成字符串
buf = null;
return source;
} else {
return buf.toString();
}
}
}
[java] view plain
// 判别是否包含Emoji表情
private static boolean containsEmoji(String str) {
int len = str.length();
for (int i = 0; i < len; i++) {
if (isEmojiCharacter(str.charAt(i))) {
return true;
}
}
return false;
}
private static boolean isEmojiCharacter(char codePoint) {
return !((codePoint == 0x0) ||
(codePoint == 0x9) ||
(codePoint == 0xA) ||
(codePoint == 0xD) ||
((codePoint >= 0x20) && (codePoint <= 0xD7FF)) ||
((codePoint >= 0xE000) && (codePoint <= 0xFFFD)) ||
((codePoint >= 0x10000) && (codePoint <= 0x10FFFF)));
}
『陆』 JAVA特殊字符过滤方法
^public static String StringFilter(String str) throws PatternSyntaxException {
// 只允许字母和数字源
// String regEx = "[^a-zA-Z0-9]";
// 清除掉所有特殊字符
String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(str);
return m.replaceAll("").trim();
}
『柒』 JAVA中如何过滤字符串里面特殊字符
class test
{
public static void main(String []args)
{
String a = "1111-22-33 13:15:46",b=new String();
int i,j,t;
for(i=0;i<a.length();i++)
if(a.charAt(i)!='-' && a.charAt(i)!=':' && a.charAt(i)!=' ')
b=b+a.charAt(i);
System.out.println(b);
}
}
『捌』 java字符串如何替换表情字符
动态来的话要自用到正则
Pattern pattern = Pattern.compile(":([0-9]+):");
String replaceStr ="<img src='/img/#.jpg'/>";
String msg =":0::1::2:";
Matcher matcher = pattern.matcher(msg);
int i=0;
String tmp;
while(matcher.find()){
System.out.println(matcher.group(1));//逐个替换
tmp=replaceStr.replace("#", matcher.group(1));
msg = matcher.replaceFirst(tmp);
matcher = pattern.matcher(msg);
}
System.out.println(msg);
『玖』 java替换表情符号 求正则表达式替换,js中又是怎么写的了
protected void asyncExec (Runnable runnable) {
if (runnable == null) {
//TEMPORARY CODE
if (!IS_CARBON) {
display.wake ();
return;
}
}
addLast (new RunnableLock (runnable));