我们要分析网页,把整个网页内容作为匹配源,但是c#的正则表达式是默认以一行为单位的,使用 RegexOptions.Multiline 也没有实质性作用(它知识改变了^和$的行为)
只要在正则表达式前面加上(?s)这个选项即可
考资料:http://hi.baidu.com/hetaoos/blog/item/7936a80faec513e9ab6457b8.html
string
s =
"......."
;
string
r =
@"(?s)(?i)导演:\s*</span>\s*<span\s+class=""m_c"">\s*<span><a.*?>(?<director>.*?)</a>"
;
string
t = Regex.Match(s, r).Groups[
"director"
];
Console.WriteLine(t);
Regex r =
new
Regex(
"(?s)(?i)id=\"__VIEWSTATE\" value=\"(?<__VIEWSTATE>[^\"]+)\" />.+"
+
"<span id=\"lbinfo\">(?<lbinfo>[^<]+)</span>.+"
+
"<span id=\"lbIP\">(?<lbIP>[^<]+)</span>.+"
+
"<span id=\"lbuserid\">(?<lbuserid>[^<]+)</span>.+"
+
"<span id=\"lbRealName\">(?<lbRealName>[^<]+)</span>.+"
+
"<span id=\"lbRemainMoney\">(?<lbRemainMoney>[^<]+)</span>.+"
+
"<span id=\"lbFreshTime\">(?<lbFreshTime>[^<]+)</span>.+"
+
"<span id=\"LNowState\">(?<LNowState>(开放|关闭)IP成功).+</span>.+"
+
"id=\"__EVENTVALIDATION\" value=\"(?<__EVENTVALIDATION>[^\"]+)\" />"
, RegexOptions.Compiled);
分享到:
相关推荐
- 基本元字符:如`.`(匹配任意字符,除换行符)、`^`(匹配行首)、`$`(匹配行尾)、`\d`(匹配数字)、`\w`(匹配字母数字下划线)等。 - 量词:`*`(零个或多个)、`+`(一个或多个)、`?`(零个或一个)、`{n...
-imsx)`可以临时关闭全局的匹配选项,如i(忽略大小写)、m(多行模式)、s(点号`.`匹配所有字符,包括换行符)、x(忽略空白字符)。 8. **自定义正则表达式生成**:这个工具可能包含了生成复杂正则表达式模式的...
C#正则表达式语法大全涵盖了在C#编程语言中使用正则表达式进行...掌握C#正则表达式语法大全对于进行文本处理和数据验证是十分有帮助的。通过对正则表达式的熟练使用,可以使许多原本复杂的文本处理任务变得简单高效。
使用 `\n` 来匹配换行符(LF,即 ASCII 0x0A),`\r` 匹配回车符(CR,即 ASCII 0x0D),但需要注意,`\r` 并不等同于换行符 `\n`。 在正则表达式中,可以选择使用转义字符来表示某些控制字符。例如,`\e` 用于匹配...
C#作为.NET框架的一部分,提供了全面支持正则表达式的类库,使得开发人员能够方便地利用正则表达式进行复杂的文本处理任务。在这个“强大的正则表达式生成工具 C#版”中,我们可以期待一个专为C#开发者设计的高效、...
### C#正则表达式提取中文 在C#中,`System.Text.RegularExpressions`命名空间提供了`Regex`类,该类是执行正则表达式操作的核心。`Regex`类包含了许多静态方法,如`Matches`、`Match`、`Split`等,这些方法可以...
C#正则表达式支持一些预定义的字符类,如`\w`代表单词字符(等同于`[a-zA-Z0-9_]`),`\s`代表空白字符(如空格、制表符等)。 6. **量词**: - `*`:匹配前面的子表达式零次或多次。 - `+`:匹配前面的子表达式...
C#中的正则表达式是一种强大的文本处理工具,它允许程序员通过特定的语法来匹配、查找、替换或者解析复杂的字符串模式。正则表达式在C#中被广泛应用于数据验证、文本提取、日志分析等多个场景。 在C#中,正则表达式...
这个压缩包文件包含了一个基于C#的正则表达式测试工具,该工具利用了C#正则表达式的传统非确定性有限自动机(NFA)引擎。 C#的正则表达式API提供了丰富的功能,包括但不限于以下几点: 1. **模式匹配**:可以使用`...
- `RegexOptions.Singleline`:单行模式,`.`能匹配包括换行符在内的所有字符。 通过学习这些基础知识和实例应用,你将能够熟练地在C#项目中使用正则表达式来处理各种字符串操作。不断实践和理解这些概念,将使你...
- `.`:匹配任何非换行符的字符。 - `^`:匹配输入字符串的开始位置。 - `$`:匹配输入字符串的结束位置。 - `\b`:匹配单词边界。 - `\d`:匹配任何数字(等同于`[0-9]`)。 - `\D`:匹配任何非数字字符(等同于`[^...
三、C#正则表达式常用方法 1. `Match`:检查输入字符串是否符合指定的正则表达式模式。 2. `Matches`:返回所有符合正则表达式的子串集合。 3. `Replace`:将字符串中所有符合正则表达式的子串替换为新的字符串。 4....
2. 正则表达式对象:在C#中,使用`System.Text.RegularExpressions`命名空间下的`Regex`类来处理正则表达式。 3. 匹配操作:`Match`对象表示正则表达式与输入字符串的一个匹配。`Regex.IsMatch(input, pattern)`...
以上示例展示了如何使用定位字符来精确控制匹配的位置,特别是在处理包含换行符的多行文本时。通过使用`RegexOptions.Multiline`选项,可以使`^`和`$`分别匹配每一行的开始和结束,而不仅仅是整个字符串的开始和结束...
以上内容涵盖了C#正则表达式的基本使用、关键方法以及在验证数据和邮箱格式时的应用。通过熟练掌握这些知识点,开发者可以更高效地处理字符串和实现数据的合法性验证。在实际编程中,应结合具体需求灵活运用正则...
本教程旨在为C#开发者提供正则表达式的基础知识,帮助理解正则表达式的概念、语法和常见用途。通过学习,你将能够编写和使用正则表达式进行文本匹配、验证和处理。 2. **如何使用本教程** 本教程适合对正则表达式...
正则表达式的基本元素包括字符集(如[a-z]表示小写字母)、量词(如*表示零个或多个前面的字符)、定位符(如^表示行首,$表示行尾)以及组合这些元素的特殊结构,如括号用于分组,管道符|表示或操作等。而这款工具...