[英]JavaScript Regex - How to check if a string only contains letters, numbers, dashes, underscores and dots
[英]javascript and php regex to allow only letters, numbers, full stops, asterisks, underscores and dashes
我只将它用于字母、数字、下划线和破折号
var regexp = /^[a-zA-Z0-9-_]+$/;
和
$test = preg_replace('/[^a-zA-Z0-9_-]$/s', '', $ebay_username);
我需要为 ebay 用户名过滤 js 和 php。
您可以使用
var regex = /^[a-zA-Z0-9-.*_]+$/; // for JS
$test = preg_replace('/[^a-zA-Z0-9-.*_]/', '', $ebay_username); // for PHP
主要思想是将您需要的符号添加到字符类中。 此外, $
锚点阻止从字符串中删除所有不需要的字符,该字符串将匹配项锚定在字符串末尾。
关于连字符:它在字符类内的范围之后,因此被解析为文字-
符号。 作为最佳实践,它应该放在字符类的末尾,以便不必对其进行转义(尽管它在ElasticSearch中不起作用,它仍然应该在字符类的末尾进行转义,而不是在它的开头)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.