簡體   English   中英

用字母數字,空格和標點符號匹配字符串的正則表達式

[英]A regex to match strings with alphanumeric, spaces and punctuation

我需要一個正則表達式來匹配包含字母,數字,空格和一些簡單標點符號的字符串( .,!"'/$ )。我有^[A-Za-z0-9 _]*[A-Za-z0-9][A-Za-z0-9 _]*$它適用於字母數字和空格,但不適用於標點符號。非常感謝幫助。

只需在類中添加標點符號和其他字符(在方括號內):

[A-Za-z0-9 _.,!"'/$]*

這匹配包含空格的每個字符串,_,字母數字,逗號,!,“,$,...添加一些特殊字符時注意,也許你需要逃避它們: 更多信息在這里

假設您的正則表達式中字符串中必須至少包含一個字母數字字符,那么我建議如下:

/^(?=.*[A-Z0-9])[\w.,!"'\/$ ]+$/i

(?=.*[A-Z0-9])預測檢查是否存在一個ASCII字母或數字; nest字符類包含所有ASCII字母數字,包括下划線( \\w )和你提到的其余標點字符。 斜杠需要被轉義,因為它也被用作正則表達式分隔符。 /i修飾符使正則表達式不區分大小寫。

<script type="text/javascript">
check("hello dfdf asdjfnbusaobfdoad fsdihfishadio fhsdhf iohdhf");
function check(data){
var patren=/^[A-Za-z0-9\s]+$/;
    if(!(patren.test(data))) {
       alert('Input is not alphanumeric');       
       return false;
    }
    alert(data + " is good");
}
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM