You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Web.config URL重写C#正则需求:提取validate后10-30位字符

Extract 10-30 Characters After "validate" in URL Using C# Regex for Web.config URL Rewrite

Got it, let's work through this to build the right regex for your Web.config URL rewrite needs.

First, let's break down your URL structure: www.localproject.com:843/user/validate/[target-token] — you need to capture the 10-30 character segment immediately following the /validate/ path segment.

Step 1: The Regex Pattern

For C# (and Web.config's rewrite engine), here are two options depending on how strict you need to be:

Basic Version (matches any 10-30 characters)

^user/validate/(.{10,30})

Strict Version (matches Base64 characters only, ideal for JWT tokens like your example)

Since your target string looks like a Base64-encoded JWT, you can restrict the regex to valid Base64 characters to avoid accidental matches:

^user/validate/([A-Za-z0-9+/=]{10,30})

What each part does:

  • ^user/validate/: Matches the start of the URL path (Web.config's match url attribute doesn't include the leading /) followed by the exact path segment you're targeting.
  • (.{10,30}): A capturing group that matches any 10 to 30 characters (the . matches everything except newlines, which aren't present in URLs).
  • ([A-Za-z0-9+/=]{10,30}): A stricter variant that only matches valid Base64 characters, perfect for tokens like your sample.

Step 2: Web.config Rewrite Rule Example

Here's how to implement this in your Web.config. You can either just capture the segment, or use it to rewrite the URL to another endpoint:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Extract Validate Token Segment" stopProcessing="true">
          <!-- Use the strict Base64 regex here -->
          <match url="^user/validate/([A-Za-z0-9+/=]{10,30})" />
          <!-- Example: Rewrite to a page that uses the captured token -->
          <action type="Rewrite" url="/validation-result?token={R:1}" />
          <!-- If you only need to capture without rewriting, use: -->
          <!-- <action type="None" /> -->
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Step 3: Testing with Your Sample URL

Using your provided URL:

www.localproject.com:843/user/validate/eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9eyJ0ZW1wVXJsIjoie1wiQ3VzdG9tZXJJZFwiOjEsXCJDb3Vyc2VJZFwiOjEsXCJUb2tlblwiOm51bGwsXCJFeHBpcnlcIjpcIjIwMTgtMDQtMThUMTc6MzU6MTMuOTQ2MjM2NCswNTowMFwifSJ9uvm7jZ3us5UFa1hqh4bod2cSamcxF2rRUbfxs7DHQs

The strict regex will capture the first 30 valid Base64 characters after /validate/:
eyJhbGciOiJodHRwOi8vd3d3LnczLm9

内容的提问来源于stack exchange,提问作者Haseeb Khan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 04:14:57