返回

正则表达式教程:用户名校验

正则表达式

一、正则解释

该正则表达式有以下组成部分:

  • ^: 表示字符串的开头。
  • [\w-]{4,16}:
    • \w: 匹配字母、数字或下划线。
    • -: 匹配减号。
    • {4,16}: 表示匹配 4 到 16 个字符。
  • $: 表示字符串的结尾。

二、使用场景

该正则表达式用于校验用户名是否符合以下规则:

  • 长度在 4 到 16 位之间。
  • 仅包含字母、数字、下划线或减号。

三、代码示例

javaScript:

const usernameRegex = /^[\w-]{4,16}$/;

const isValidUsername = (username) => {
  return usernameRegex.test(username);
};

java:

import java.util.regex.Pattern;

public class UsernameValidator {

  private static final Pattern USERNAME_PATTERN = Pattern.compile("^[\w-]{4,16}
import java.util.regex.Pattern;

public class UsernameValidator {

  private static final Pattern USERNAME_PATTERN = Pattern.compile("^[\w-]{4,16}$");

  public static boolean isValidUsername(String username) {
    return USERNAME_PATTERN.matcher(username).matches();
  }
}
quot;
); public static boolean isValidUsername(String username) { return USERNAME_PATTERN.matcher(username).matches(); } }

php:

<?php

$usernameRegex = '/^[\w-]{4,16}$/';

function isValidUsername($username) {
  return preg_match($usernameRegex, $username);
}

python:

import re

username_regex = r'^[\w-]{4,16}
import re

username_regex = r'^[\w-]{4,16}$'

def is_valid_username(username):
  return re.match(username_regex, username) is not None
#x27;
def is_valid_username(username): return re.match(username_regex, username) is not None

测试文本

测试文本:xiaohua_qq

使用上面提供的代码示例,我们可以验证该用户名是否有效:

console.log(isValidUsername('xiaohua_qq')); // true

因此,xiaohua_qq 是一个有效的用户名,因为它符合正则表达式的规则。