java過濾掉中文
㈠ java filter 過濾器中文亂碼 怎麼解決啊
1、首先編寫一個Java類的代碼。操作步驟:
(1)在myeclipse中新建一個java類,
(2)單擊「Add」按鈕,在彈出來的對話框中「選擇介面」文本框中輸入Filter,
並選擇匹配好的類型javax.servlet
(3)單擊「OK」按鈕返回"New Java Class"對話,然後單擊「Finish」按鈕,就可以看到創建的過濾器框架:
過濾器類:Encoding.java,代碼如下:
package com;
import java.io.IOException;
import javax.servlet.*;
public class Encoding implements Filter {
protected String encoding=null;
protected FilterConfig config;
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
if(request.getCharacterEncoding()==null){
//得倒指定的編碼
String encode=getEncoding();
if(encode!=null){
//設置request的編碼
request.setCharacterEncoding(encode);
response.setCharacterEncoding(encode);
}
}
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws ServletException {
this.config=filterConfig; //得到web.xml中的配置編碼
this.encoding=filterConfig.getInitParameter("Encoding");
}
protected String getEncoding(){
return encoding;
}
}
2、在web.xml文件寫入以下代碼:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<filter> <!-- 控制編碼 -->
<filter-name>EncodingFilter</filter-name>
<filter-class>com.Encoding</filter-class>
<init-param> <!-- 初始化參數 -->
<param-name>Encoding</param-name>
<param-value>GB2312</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
㈡ java 如何過濾html代碼,只保留中文或英文及基本常用符號
很容易,首先建立一個字元串數組,也就是你需要過濾掉的html標簽專String[] filterArrays = new String[]{"<html>","</html>","<table>","</table>".....一系列有關html標簽的屬東西}
當你得到一個html代碼的字元串時你可以循環遍歷上面的數組,然後調用String自帶的方法replaceAll();
我給你簡單的示範一下啊
String str = "dfgdgdfgdgd";//需要過濾的帶有HTML標簽的代碼字元串
for(int i=0;i<filterArrays.length;i++){
if(str.indexOf(filterArrays[i])!=0){
str = str.replaceAll(filterArrays[i],"");//將html標簽替換成了空格
}
}
這樣就搞定了,主要是你需要在filterArrays中增加你需要過濾的字元串,當然還會有更好的辦法,可以不用增加這樣的數組,因為出現"<"必然會有">",或者"/>"這樣的標簽,但是這樣做可能會將一些無關的也過濾掉了,總之兩種方法都可以,第一種呢我都給你寫了例子!祝你成功啊
㈢ java 字元串中亂碼過濾
new String(str.getBytes(),"GBK");
用這方法,把亂碼正確顯示。當然編碼要自己設
㈣ 關於java過濾器解決中文亂碼的
因為你遺漏襲了重要的一步。正確的方法如下:
if(encoding!=null){
//設置request字元編碼
request.setCharacterEncoding(encoding);
//設置response字元編碼
response.setContentType("text/html;charset="+encoding);
response.setCharacterEncoding(encoding);
}
//傳遞給下一個過濾器
chain.doFilter(request,response);
㈤ 表單中如何用java過濾中文字元
看每個字元的ASCII碼。如果大於225 則是漢字。
對符號也是。看ASCII碼是否等於那個符號。
要不你就看字元是否在(A~Z)|(a~z)|(0~9)
㈥ java正則表達式 過濾特殊字元 只允許中文、字母和數字, 該怎麼寫急。。。
^||||String str = "*(^YUIGHUGU^^&*()*6哈哈89324328uewh~!@#$%^&*()_+,./<>?;':[]\\{}|-=";//要過濾的字元串
str = str.replaceAll("[\\pP|~|$|^|<|>|\\||回\\+|=]*", "");
System.out.println(str);
輸出結果答:YUIGHUGU6哈哈89324328uewh
㈦ java字元串裡面如何用正則表達式去掉漢字
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "123abc你好efc";
String reg = "[u4e00-u9fa5]";
Pattern pat = Pattern.compile(reg);
Matcher mat=pat.matcher(str);
String repickStr = mat.replaceAll("");
System.out.println("去中文後:"+repickStr);
}
㈧ Java如何從字元串中取出中文和數字,去掉其他字元
^String str = "^制2^3da42b3中文sae34科e技b2報2`~!@#$%^&*()_+-=[]{};':\",.<>/?\\93飛";
str = str.replaceAll("[^0-9\\u4e00-\\u9fa5]", "");
System.out.println(str);
㈨ java怎麼把字元串中的的漢字取出來
1.判斷字元串是否全是漢字。
String str1 = "java判斷是否為漢字"
String str2 = "全為漢字"
String reg = "[\u4e00-\u9fa5]+"
boolean result1 = str1.matches(reg)//false
boolean result2 = str2.matches(reg)//true
2.提取字元串中的漢字。
String str = "java怎麼把asdasd字元串中的asdasd的漢字取出來"
String reg = "[^u4e00-u9fa5]"
str = str.replaceAll(reg, " ")
System.out.println(str)
3.判斷字元串中是否含有漢字。
boolean result = (str.length() == str.getBytes().length)//true:無漢字 false:有漢字
4.獲取字元串中漢字的個數。
int count = 0
String reg = "[\u4e00-\u9fa5]"
String str = "java獲取漢字Chinese的個數"
Pattern p = Pattern.compile(reg)
Matcher m = p.matcher(str)
while (m.find()) {for (int i = 0; i <= m.groupCount(); i++) {count = count + 1}}
System.out.println("共有漢字 " + count + "個 ")
㈩ 如何用java做語料庫中非中文字詞的過濾
題主你好,你可以用正則表達式將語料庫中的詞進行過濾,條件為非中文即可。希望能幫到你,望採納。