苏飞论坛
标题: 正则表达式收集与C#方式实现 [打印本页]
作者: 站长苏飞 时间: 2013-1-9 14:17
标题: 正则表达式收集与C#方式实现
1.取出所有的 A标签
[C#] 纯文本查看 复制代码
<a[^>]+>(.*?)</a>
2.取出A标签里面的属性
会取出所有的A标签里面的属性
3.检查是否存在content的Meta
[C#] 纯文本查看 复制代码
<meta([^<]*)content=([^<]*)>(.*?)
4.检查是否存在rel的a
[C#] 纯文本查看 复制代码
<a([^<]*)rel=([^<]*)>(.*?)
5.获取时间的正则表达式
[C#] 纯文本查看 复制代码
\s\d{1,4}-\d{1,2}-\d{1,2}
6.获取以,分开的数字的正则
[C#] 纯文本查看 复制代码
\d{1,100}([,]*\d{1,100})*
7.匹配所有的Script标签
[C#] 纯文本查看 复制代码
<script[^>]*?>.*?</script>
8.匹配所有的noScript标签
[C#] 纯文本查看 复制代码
<noscript[^>]*?>.*?</noscript>
9. 匹配所有的href标签
[C#] 纯文本查看 复制代码
href=["'\s]?(.*?)["'
10.取出Html的编码
[C#] 纯文本查看 复制代码
Match meta = Regex.Match(html, "<meta([^<]*)charset=([^<]*)[\"']", RegexOptions.IgnoreCase | RegexOptions.Multiline);
tring charter = (meta.Groups.Count > 2) ? meta.Groups[2].Value : string.Empty;
11.过滤所有Html代码的方法
[C#] 纯文本查看 复制代码
/// <summary>
/// 过滤html标签
/// </summary>
/// <param name="strHtml">html的内容</param>
/// <returns></returns>
public static string StripHTML(string stringToStrip)
{
// paring using RegEx //
stringToStrip = Regex.Replace(stringToStrip, "</p(?:\\s*)>(?:\\s*)<p(?:\\s*)>", "\n\n", RegexOptions.IgnoreCase | RegexOptions.Compiled);
stringToStrip = Regex.Replace(stringToStrip, "<br(?:\\s*)/>", "\n", RegexOptions.IgnoreCase | RegexOptions.Compiled);
stringToStrip = Regex.Replace(stringToStrip, "\"", "''", RegexOptions.IgnoreCase | RegexOptions.Compiled);
stringToStrip = StripHtmlXmlTags(stringToStrip);
return stringToStrip;
}
private static string StripHtmlXmlTags(string content)
{
return Regex.Replace(content, "<[^>]+>", "", RegexOptions.IgnoreCase | RegexOptions.Compiled);
}
使用访求
[C#] 纯文本查看 复制代码
string str = StripHTML(html);
12.验证IP地址的正则表达式
13.验证身份证15位和18位
[C#] 纯文本查看 复制代码
\d{17}[\d|X]|\d{15}
14.验证URL
[C#] 纯文本查看 复制代码
http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
15.验证电子邮件
[C#] 纯文本查看 复制代码
\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
16.验证固定电话
[C#] 纯文本查看 复制代码
(\(\d{3}\)|\d{3}-)?\d{8}
17.邮编
作者: 菩提树 时间: 2013-4-28 00:01
正在学习正则,据说要好长时间会学会。
作者: 站长苏飞 时间: 2013-4-28 08:09
菩提树 发表于 2013-4-28 00:01
正在学习正则,据说要好长时间会学会。
用着学着就行了,不用一下子全学会
作者:  ̄itˊsme。 时间: 2013-6-6 16:28
我也分享一个吧,获取网页关键词和描述(自己写的,希望有高手过来帮忙优化下):- <meta\s*(content=[""']?(.*?)[""']?\s*name=[""']?(.*?)[""']?)\s*[/]?>|(name=[""']?(.*?)[""']?\s*content=[""']?(.*?)[""']?)\s*[/]?>
复制代码
作者: Joy的池塘 时间: 2014-7-27 14:57
受教了,学习中……O(∩_∩)O哈哈~我第一次学的时候把它当成颜文字了
作者: liu67667 时间: 2014-10-27 07:23
感谢您的无私奉献,真是帮了我的大忙了
作者: abc147325 时间: 2021-1-19 21:53
牛逼,膜拜大佬门
欢迎光临 苏飞论坛 (http://www.sufeinet.com/) |
Powered by Discuz! X3.4 |