正则匹配的通用方法
来源:互联网 发布:直播人气软件 编辑:程序博客网 时间:2024/06/06 00:58
之前做了一个爬虫的程序,因为要通过正则表达式进行数据匹配,网站上数据不是所有都具有值,可能有的时候没有值,这个时候就需要给一个默认值,比如数值类型默认为0,字符串类型默认为string.Empty等等。不能不写,又想偷懒,于是就有了该方法原型。
public static T GetMatchResult<T>(string input, string pattern, int groupIndex = 1){ // 该方法中默认值只有数字:0、字符串:string.Empty两种情况,其他不需考虑 object result = typeof(T).BaseType == typeof(System.ValueType) ? "0" : string.Empty; Match matchResult = Regex.Match(input, pattern, RegexOptions.Compiled); if (matchResult.Success) { string newResult = matchResult.Groups[groupIndex].Value.Trim(); try { result = Convert.ChangeType(newResult, typeof(T)); } catch (Exception ex) { throw new Exception($"{pattern}匹配字符串:{input}失败。\r\n{ex}"); } } return (T)Convert.ChangeType(result, typeof(T));}
最开始还有DateTime类型,但是因为匹配到的DateTime类型的字符串更加复杂,只能特殊处理,就把DateTime类型从方法中取消了。这里只是提供方法的思路,如果有其他数据要求,可以根据需求进行更改。
阅读全文
1 0
- 正则匹配的通用方法
- 通用正则匹配
- javascript的正则匹配方法
- javascript的正则匹配方法
- js正则表达式的几个匹配方法
- javascript判断整数的正则匹配方法
- JavaScript 正则 匹配变量的方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- 【opencv】特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- OpenCV中特征点提取和匹配的通用方法
- android scrollview 嵌套 Viewpager, Viewpager 不能动态的设置高度,一直使用第一个fragment页面的高度
- BZOJ1014 [JSOI2008]火星人prefix
- Struts2配置redis共享session启动报错,求大神指点.配置和报错信息如下:
- HTML笔记1
- qq跳转到指定qq聊天消息窗口界面
- 正则匹配的通用方法
- matlab 2012 vs2010混合编程
- SpringBoot01 java的配置方式
- NLP基础-BOW-影评分类
- 超大数减1
- spring boot 学习笔记(05)——热部署 之spring-boot-devtools
- scrapy 一次性提取多层嵌套标签的所有文本
- WechatWeb js方法
- 微信小程序----gallery slider(图片轮播)组件