v2rayN Subscription Groups and Server Filtering: Regex Filters and Sorting for Multiple Subscriptions

Keep v2rayN server lists organized with subscription groups, remark-based regex filters, and automatic update intervals. Learn how to manage multiple subscriptions and avoid common group-switching pitfalls.

At a glance

When managing multiple subscriptions, start by identifying each source, then filter by server remarks, and finally set update intervals and test server order. This guide is for v2rayN users who already have a working connection. It covers group naming, regular expressions, update schedules, and sorting checks. Most importantly, it distinguishes what appears in the list from what is actually connected, so switching groups isn't mistaken for switching the outbound connection.

Subscription Groups, List Filters, and Routing: What Each One Does

Subscription groups track which subscription a server came from, making it easier to update and manage each source separately. Server filters narrow the list or import results based on conditions such as remarks. Routing rules determine whether a connection uses a proxy, connects directly, or uses another configured outbound. These are separate functions: putting a server in a “Japan” group won't automatically route a particular website through it.

Likewise, switching to another group usually only changes which servers are shown. Check the active-server indicator on the main screen, the status bar, and core logs to confirm which server is actually in use. Moving a server higher in the list does not make it active.

Create source groups Fetch subscription data Match remark rules Review the server list Set the active server

Group subscriptions by source and keep manual servers separate

In v2rayN, open “Subscription Groups” → “Subscription Group Settings” and create a separate entry for each source, with a remark and subscription URL. Button names may vary between versions; make sure you're in the subscription group settings window, not the editor for an individual server. After adding a source, update that group once and confirm the servers import successfully before adding filters.

Use a consistent prefix to identify each source, such as “01-Main” and “02-Backup.” Keep region details in server remarks and filter them there. Adding the same subscription URL again for each region creates separate update entries and may duplicate servers. Avoid splitting a source this way unless you need different filter rules.

01-Main Subscription

Source
Subscription URL for regular use
Initial filter
Leave blank until you've confirmed the full import
Update interval
Suggested starting point: 24 hours
Remark management
Keep the source's existing names where possible

After confirming the update succeeds, gradually tighten the filters.

02-Backup Subscription

Source
Separate backup subscription URL
Initial filter
Leave blank until you've confirmed it works
Update interval
For infrequently changing sources, try 168 hours
Enablement check
Update and test manually before use

If the backup source changes servers frequently, use a shorter update interval.

Remark regex filters: test matches before adding exclusions

Regex filters match server remarks; they don't automatically check a server's location, actual exit region, or protocol capabilities. A remark such as “Hong Kong” is only a naming condition—it doesn't prove the server's exit region or performance. Copy a few real remarks from the imported list before writing a rule, rather than guessing at keywords.

The expressions below are for remark-filter fields that support regular expressions, and assume the filter keeps matching entries. If the interface only offers plain-text search, don't paste these expressions there. In the examples, (?i) enables case-insensitive matching; confirm the field supports this syntax before using it.

GoalExpressionNotes
Keep region namesHong Kong|JapanMatches if either keyword appears.
Keep only the HK prefix(?i)^HK[-_ ]Matches remarks that start with HK, followed by a hyphen, underscore, or space.
Keep only the JP prefix(?i)^JP[-_ ]Won't match JP if it appears elsewhere in the remark.
Match region names and exclude status terms^(?!.*(?:Expired|Remaining|Traffic)).*(?:Hong Kong|Japan).*$Excludes the entire remark if it contains any of the specified terms.

For example, Hong Kong-Standard-01 and Japan-Standard-02 match the last rule, while Hong Kong-Remaining Traffic does not. The exclusion applies only to remark text: a valid server name containing “Traffic” will also be excluded. Match the rules to your actual naming scheme, and always review the results manually.

Sample remarks to check:
Hong Kong-Standard-01
Japan-Standard-02
Hong Kong-Remaining Traffic
United States-Standard-03

Keep rule:
^(?!.*(?:Expired|Remaining|Traffic)).*(?:Hong Kong|Japan).*$

Expected matches:
Hong Kong-Standard-01
Japan-Standard-02

Automatic update intervals: set them to match how often each source changes

In “Subscription Groups” → “Subscription Group Settings,” check the automatic update interval for each entry. Use the unit shown in the field: if it's in minutes, 24 hours is 1440 minutes and 168 hours is 10080 minutes. Don't enter hours in a field that expects minutes.

24 hours
Suggested starting interval for the main source
168 hours
Example interval for a backup source that changes infrequently
2 entries
Expected matches from the regex example above

These figures are recommendations and example results for this guide, not client defaults or live service data. Updating more often isn't always better: subscription servers may limit request frequency, and endpoints can be temporarily unavailable. If an update fails, check the network path and logs before shortening the interval.

  1. Connect using a working server and confirm that you can access the internet.
  2. From the subscription update menu, choose a regular update or an option labeled “via proxy,” depending on whether the subscription URL is reachable directly.
  3. Update only the target group and check the logs for timeouts, authentication errors, parsing failures, or empty results.
  4. Review the group contents, confirm the active server still works, then choose an appropriate automatic update interval.

Automatic updates also depend on the client running and the device having a network connection; they aren't server-side scheduled tasks. Don't assume subscriptions will refresh on schedule while the computer is asleep or the client is closed. Manually update a backup source before relying on it rather than trusting its last scheduled run.

Sorting and testing: narrow the list, then check the active server

Select a subscription group, clear any search terms you don't need, then click the remark or test-result column heading to sort. Clicking the heading again usually reverses the order; check the arrow in the header. Sorting by remark helps verify names and sources. Sorting by test results helps compare servers tested in the same run—don't draw conclusions by mixing old results with current ones.

A VMess or VLESS remark doesn't guarantee that the current core supports every transport and security setting in that entry. A subscription may import successfully while connections fail due to incompatible fields. Check the actual configuration against the protocol reference instead of trying to fix it by renaming or reordering the server.

Common issues: empty lists, failed updates, and group switches that don't change the connection

The whole group disappeared after I added a regex. How do I restore it?

Clear the main-screen search first. If the list is still empty, open “Subscription Groups” → “Subscription Group Settings,” temporarily remove the filter for that entry, save, and update that group on its own. Once the full list is back, test with a region term that appears in an actual remark. Confirm whether the filter keeps or excludes matches before adding more complex conditions.

Why doesn't switching to the backup group change my exit region?

Selecting a group only changes which servers appear in the list. Set the backup server as active, confirm its name has changed in the status bar, then test with a new request. Existing long-lived connections may still use the previous connection; reconnect the app if needed.

The subscription URL opens, but the client times out during an update. Why?

The browser and client may use different network paths. Connect to a working server first, then try the “via proxy” option in the subscription menu. Update only one group and check the logs. Before sharing logs, remove tokens, authentication parameters, and server credentials from subscription URLs.

Why did my manual remark and settings revert after an update?

A subscription refresh may recreate its entries. Copy servers you want to keep into a separate manual group before editing their remarks or connection settings. Check manual copies yourself when the source changes; they won't continue to update with the original subscription.

Two groups have servers with the same name. Can I deduplicate them?

Compare the address, port, user ID, transport, and security settings first. Identical remarks don't mean the connection settings are the same. Back up before bulk cleanup, and check whether the action applies to the selection, current group, or all servers to avoid deleting entries from the wrong source.

Review steps after making changes

Use the same short workflow to maintain multiple subscriptions: confirm the source, validate the filter, update one group, test candidates, and confirm the active server. Change one type of setting at a time so you can tell whether a problem comes from fetching the subscription, regex matching, connection settings, or routing.

  1. Confirm that each group remark matches its subscription source, and keep manual configurations out of groups that refresh automatically.
  2. Test regex rules against real remarks, including examples that should be kept and excluded.
  3. After saving, update that group on its own and review the logs and imported servers—not just whether the list looks different.
  4. Check the update interval's units, then confirm the most recent update succeeded after the device is back online.
  5. Test candidate servers, explicitly set the one you want as active, then use a new request to verify the actual exit.

If the problem is with the initial import or system proxy settings, start with the basic checks in the setup guide. An organized server list is only a management outcome; what matters is whether the connection works, apps follow the intended routes, and subscriptions continue to update reliably.

Download v2rayNExplore clients for four platforms