时间:2021-05-19
需求:获取一串字符串中,正则匹配出需要的数据。
例如以下字符串:
我需要获得“-1”和“{"UserId" : "1000","userName" : "ZhangSan"}”;
接下来,就使用正则去匹配:
这时候tempStr得到的是”-1--{"UserId" : "1000","userName" : "ZhangSan"}“
下面给大家分享一段代码有关C#中使用正则表达式自动匹配并获取所需要的数据
正则表达式能根据设置匹配各种数据(比如:e-mail地址,电话号码,身份中号码等等)。正则表达式功能强大,使用灵活,C#,Java,JavaScript等多种语言都支持正则表达式。在互联网上“抓取数据”更是少不了使用正则表达式。今天我要说的是在C#中使用正则表达式自动匹配并获取所需要的数据。
从下面是某个IP查询网站返回查询结果的一个部分(字符串),现在就是要从这个字符串中获取“查询结果1:”后面的“北京市 网通”。
C#相关代码如下:
string srcString = " <td align=\ " center\ " ><ul><li>查询结果1:北京市 网通</li><li>查询结果2:北京市 网通</li><li>查询结果3:北京市 网通</li></ul></td> " ;// 匹配 "<li>查询结果1:" 与 "</li>" 之间的所有字符的正则表达式string regexStr = " <li>查询结果1:(?<key>.*?)</li> " ;Regex r = new Regex(regexStr, RegexOptions.None);Match mc = r.Match(srcString);string dataStr = mc.Groups[ " key " ].Value;说明:
这里最关键的是设置正则表达式: " <li>查询结果1:(?<key>.*?)</li> "。
字符
描述
<key>
根据key获取由正则表达式匹配的值。
.
匹配除"\n"之外的任何单个字符。
*
匹配前面的子表达式零次或多次。
?
跟在任何一个其他限制符(*, +, ?, {n}, {n,}, {n,m})后面时,匹配模式是非贪婪的;非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
dataStr 就是我们要得的数据:“北京市 网通”。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文介绍在C#中使用匹配中文的正则表达式,包括纯中文、有中文、中文开头、中文结尾等几个正则表达式示例。在正则表达式中,中文可以通过Unicode编码来确定正则表
在C#中,我们一般使用Regex类来表示一个正则表达式。一般正则表达式引擎支持以下3种匹配模式:单行模式(Singleline)、多行模式(Multiline)
下面会举几个在grep命令中使用正则表达式从一个文件中匹配到特定的IP地址。下面的正则表达式将会匹配IPV4的地址。正则表达式匹配IP地址:使用下面的正则表达式
js中的正则表达式比起C#中的正则表达式要弱很多,但基本够用了1定义正则表达式2关于验证的三个这则表达式方法3正则表达式式的转义字符1定义正则表达式在js中定义
本文实例讲述了Java使用正则表达式匹配获取链接地址的方法。分享给大家供大家参考,具体如下:获取页面中字符串的url地址我们都会使用正则表达式来匹配获取了,下面