asp 求正则表达式 取网站标题,关键词和描述

我用<title>(.*?)</title>似乎可以得到标题,但这不完善,如中间出现换行或空格时,就得不到

取关键词时如出现 <meta content="内容" name="keywords">和<meta name="keywords" content="内容" />时,应该如何写正则表达式呢

求一个能在各种情况下读取网站标题,关键词和描述的正则表达式!!
最新回答
你刚好出现

2024-04-11 04:38:46

<title>(.*)<\/title> 空格是没有问题的,至于换行这些本来就不应该在title之间出现这样的格式,如果实在要这样做的话就用 fennng写的正则<title>([\s\S]*?)<\/title>。既然是采集信息,采集到后就应该先把采集到的内容中不必要的换行什么的替换掉,再用正则去提取。正则就要根据一定得规律去写,不可能写上一个能符合各种情况下的正则,至少我写不出来。关键词可以用
<meta\s*(name="keywords"\s*content="(.*)"|content="(.*)"\s*name="keywords")\s*\/>
取m[1]或m[2],当是<meta content="内容" name="keywords">时就是m[2],当<meta content="内容" name="keywords">时就是m[1],所以取的时候判断一下,如果m[1]==""再取m[2]如果还是要取含换行等空白字符的话就用<meta\s*(name="keywords"\s*content="([\s\S]*?)"|content="([\s\S]*?)"\s*name="keywords")\s*\/>
宅m

2024-04-11 03:32:12

提取新闻的题目和关键字吧,要不多麻烦
追问
这样达不到效果的
追答
想要什么效果,根据标题提取关键字吗
追问
当出现和这种情况时

读取上面的“内容”
追答
我等会试试吧,没做过没有什么头绪
进不ㄋ怹

2024-04-11 05:58:59

<title>([\s\S]*?)</title>
<meta.*?content="(.*?)".*>

提取 \1