簡體   English   中英

正則表達式刪除除數字以外的所有特殊字符?

[英]Regex remove all special characters except numbers?

我想從字符串中刪除所有特殊字符(數字除外)。 我已經能夠做到這一點

var name = name.replace(/[^a-zA-Z ]/, "");

但似乎它正在刪除第一個數字並留下所有其他數字。

例如:

name = "collection1234"; //=> collection234

name = "1234567"; //=> 234567

使用全局標志:

var name = name.replace(/[^a-zA-Z ]/g, "");
                                    ^

如果您不想刪除數字,請將其添加到類中:

var name = name.replace(/[^a-zA-Z0-9 ]/g, "");

要刪除特殊字符,請嘗試

var name = name.replace(/[!@#$%^&*]/g, "");

如果您不介意將下划線包含為允許的字符,您可以簡單地嘗試:

result = subject.replace(/\W+/g, "");

如果還必須排除下划線,則

result = subject.replace(/[^A-Z0-9]+/ig, "");

(注意不區分大小寫的標志)

刪除符號使用標簽 [ ]

步驟:1

[]

第 2 步:放置您要刪除的符號 eg:@ like [@]

[@]

第 3 步:

var name = name.replace(/[@]/g, "");

就是這樣

 var name="ggggggg@fffff" var result = name.replace(/[@]/g, ""); console .log(result)

額外提示

刪除空格(在方括號中留一個空格,如 []=>[ ])

[@ ]

它刪除所有內容(使用除外)

[^place u dont want to remove]

例如:我刪除除字母表之外的所有內容(小寫和大寫)

[^a-zA-Z ]

 var name="ggggg33333@#$%^&**I(((**gg@fffff" var result = name.replace(/[^a-zA-Z]/g, ""); console .log(result)

這也應該有效

text = '車? 又大又*紅!

newtext = re.sub( '[^a-z0-9]', ' ', text)

打印(新文本)

這輛車又大又紅

暫無
暫無

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

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