『壹』 c語言程序填空:將html文件中的htm標記過濾掉
11 "w"
12 fgetc(fin)
13 sc
14 fgetc(fin) == '\n'
15 fclose(fin)
『貳』 html的文件域標簽使用時怎麼過濾文件後綴
好像是不可以,只能在上傳的時候檢測是不是符合你設定的類型,不過這種檢測一般是放在伺服器端做的,放在客戶端做不安全
『叄』 用HTMLParser過濾掉html中所有標簽,留下標題正文等內容,java
現在的網頁,取來title容易,要取到整齊的內源容,就麻煩了。既然是爬蟲,又不可能針對每個頁面都寫一遍。所以,你能解決這問題,是高智商、是值錢的。
<title>和</title>可以認為是標題,用字元串的處理方法即
<content>和</content>不是標準的HTML,不能認為之間的文字就是內容 。雖然<body>和</body>是,可之間的內容也太亂了。
『肆』 我有一個頁面a.html,把它裡面的內容讀取到b.text中,我如何過濾掉<html></html>和<body></body>呢
String data="";
BufferedReader br;
BufferedWriter bw;
StringBuffer sb=new StringBuffer();
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(path+"\\"+"a.html")));
while((data = br.readLine())!=null){
String str=data.replaceAll("[<body><html>]", "");//這里是把<body><html>的標簽都替換為空
sb.append(str);
if(!str.equals("")||str.length()>0)
sb.append("\r\n"); //這里是如果字元串的長度大於0或者不等於空就換行
}
bw=new BufferedWriter(new FileWriter(new File(path+"\\"+"a.txt");
bw.write(sb.toString());//將讀出來的內容寫入a.txt文件
bw.flush();
bw.close();
}
} catch (Exception e) {
e.printStackTrace();
}
『伍』 web.xml lt;filter-mapping>我不想過濾html文件,怎麼設置
不使用 /* 攔截所有,攔截想攔截的就可以了
類似下面的過濾方式
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.usl</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.view</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/jaxrs/*</url-pattern>
</filter-mapping>
在filter類中判斷一下,如果是.html結尾的就不過濾。
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{
另外, if(reqURI.endsWith(".html")) 到底是 真還是假
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{
另外, if(reqURI.endsWith(".html")) 到底是 真還是假
就是這個chain,這個判斷就是判斷你放問的路徑是否以.html結尾,你可以試試。
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{
另外, if(reqURI.endsWith(".html")) 到底是 真還是假
就是這個chain,這個判斷就是判斷你放問的路徑是否以.html結尾,你可以試試。
報錯
java.lang.IllegalStateException: getWriter() has already been called for this response
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
//把ServletRequest和ServletResponse轉換成真正的類型
HttpServletRequest req = (HttpServletRequest)request;
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".do")) chain.doFilter(request, response);
System.out.println(reqURI);
chain.doFilter(request, response);
}
我這里用過的原代碼,沒錯,你看下你別的地方,用到response的地方
//把ServletRequest轉換成真正的類型
HttpServletRequest req = (HttpServletRequest)request;
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
else{
return;
}
『陸』 web.xml lt;filter-mapping>我不想過濾html文件,怎麼設置
你可以設置想過濾源的動作,這樣就不過濾html了。比如下面這樣:
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.usl</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
『柒』 java(從html文件中提取標簽之外的文本)
實現代碼如下:
public static String Html2Text(String inputString){
String htmlStr = inputString; //含html標簽的字元串
String textStr ="";
java.util.regex.Pattern p_script;
java.util.regex.Matcher m_script;
java.util.regex.Pattern p_style;
java.util.regex.Matcher m_style;
java.util.regex.Pattern p_html;
java.util.regex.Matcher m_html;
try{
String regEx_script = "<[\\s]*?script[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?script[\\s]*?>"; //定義的正則表達式{或<script[^>]*?>[\\s\\S]*?<\\/script> }
String regEx_style = "<[\\s]*?style[^>]*?>[\\s\\S]*?<[\\s]*?\\/[\\s]*?style[\\s]*?>"; //定義style的正則表達式{或<style[^>]*?>[\\s\\S]*?<\\/style> }
String regEx_html = "<[^>]+>"; //定義HTML標簽的正則表達式
p_script = Pattern.compile(regEx_script,Pattern.CASE_INSENSITIVE);
m_script = p_script.matcher(htmlStr);
htmlStr = m_script.replaceAll(""); //過濾script標簽
p_style = Pattern.compile(regEx_style,Pattern.CASE_INSENSITIVE);
m_style = p_style.matcher(htmlStr);
htmlStr = m_style.replaceAll(""); //過濾style標簽
p_html = Pattern.compile(regEx_html,Pattern.CASE_INSENSITIVE);
m_html = p_html.matcher(htmlStr);
htmlStr = m_html.replaceAll(""); //過濾html標簽
textStr = htmlStr;
}catch(Exception e){
Manager.log.debug("neiNewsAction","Html2Text: " + e.getMessage());
}
return textStr;//返迴文本字元串
}
『捌』 html中的file控制項
好像是因為瀏覽器兼容的問題,這個代碼在IE是可行的,不過那個VALUE是值版裡面的LOGO要單引吧。權。。。網上有關於FILE兼容的解決方案。
http://www.jb51.net/html5/65634.html
『玖』 web.xml lt;filter-mapping>我不想過濾html文件,怎麼設置
你可以設置想源過濾的動作,這樣就不過濾html了。比如下面這樣:
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.usl</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
『拾』 php文件輸出如何過濾掉html,代碼如下
<b>asasasas</b>這個html標簽是加粗標簽,如果你想在瀏覽器上顯示的是版加粗的asasasas就直接輸出
<?php
echo "<b>asasasas</b>";
?>
如果你想輸權出的<b>asasasas</b>這個字元串的話呢
<?php
echo htmlspecialchars("<b>asasasas</b>");
?>