譬如我要匹配一个字符串“请拨打110求助”,这个正则不仅要匹配“请拨打110求助”,
也要能匹配包含html标签的字符串(中间的|去掉,防止被过滤用的)如:“请拨打<|span>110<|/span>求助“
单纯一个正则表达式肯定搞不定,比如(java)需要先定义好所有的html标签(即正则匹配的标签),然后根据正则表达过滤掉对应的字符,提取所匹配的字符即可实现。望采纳!
我需要的就是那条正则表达式,如果span里面有style这些属性,那正则表达式是不是又要另外写一条?
使用正则表达式去掉html标签的方法常用的正则表达式是:/<[^<]+?>/g
1、定义含有html标签的字符串:
$text = '
Test paragraph.
<!-- Comment --> Other text';2、定义正则表达式并替换
$val = preg_replace('/<[^<]+?>/g', ' ', $row_get_Business['business_description']);
3、截取指定长度
$businessDesc = substr(val,0,110);
var reg=/^(\d)<\/span>+$/g,你的意思 是不是 要 匹配span的正则 表达式?//g代表全局,\s是空格,(.*?)有一个多了无限 ,[' "]单引号或者双引号 ,\w代表 字母或者 数字 或者 下划线 \d是 数字 ,^$是从头到尾巴匹配的
var reg=/^(\d)<\/span>+$/g
这个要具体面对不同的格式才能做不同的格式处理
package com.huowolf;
import java.util.Scanner;
public class Demo8 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = null;
while(true) {
s=sc.nextLine();
System.out.println(IsHTML(s));
}
}
public static boolean IsHTML(String s) {
String reg = "<(\\w+?>).+?</\\1||<[^>]+?(\\s\\w+?=.+?)*/>";
return s.matches(reg);
}
}
自己码的,仅供参考!!