<filter> 元素

允许按顺序应用多个规则。

配置结构的示例:

<configuration>
   <system.web>
      <browserCaps>
         <filter>

<filter>
   [assignments, filter elements and case elements]
<filter>
<filter match="[regular expression]" with="[regular expression]" >
   [assignments, filter elements and case elements]
</filter>
<filter>
   <case match="[regular expression]" with="[regular expression]" >
      [assignments, filter elements and case elements]
   </case>
</filter>

可选的属性

属性 描述
match 用来与 with 属性相比较的 .NET Framework 正则表达式。如果省略,则假定匹配成功。
with 要搜索的 .NET Framework 正则表达式或字符串。如果省略,则使用由 <use> 元素指定的字符串。

子标记

子标记 描述
<case> 允许在多个选项中第一次成功匹配之后停止模式匹配。

示例

下例演示了如何对任意版本的 Internet Explorer 的 User-Agent HTTP 头进行分析(只要 User-Agent 字符串的格式大致保持不变)。

本例使用了 .NET Framework 正则表达式,并通过正则表达式的子表达式捕获功能来将版本号从 User-Agent 字符串直接移动到 browser caps 对象中。

该文件以赋值语句的形式指定名称/值对,类似于 Internet 信息服务 (IIS) 的 browscap.ini 文件。例如,“browser=IE”行将浏览器字段的值设置为“IE”字符串。

<configuration>
   <browserCaps>
      <result type="System.Web.HttpBrowserCapabilities, System.Web"/>
      <use var="HTTP_USER_AGENT"/>
      browser=Unknown
      version=0.0
      majorversion=0
      minorversion=0
      frames=false
      tables=false
      cookies=false
      backgroundsounds=false
      <filter>
         <case match="^Mozilla[^(]*\(compatible; MSIE 
            (?'ver'(?'major'\d+)(?'minor'\.\d+)(?'letters'\w*))
            (?'extra'.*)">
            browser=IE
            version=${ver}
            majorver=${major}
            minorver=${minor}
            <case match="^2\." with="%{version}">
               tables=true
               cookies=true
               backgroundsounds=true
               <case match="2\.5b" with="%{version}">
                  beta=true
               </case>
            </case>
         </case>
      </filter>
   </browsercaps>
</configuration>

要求



相关主题


© 1997-2003 Microsoft Corporation。保留所有权利