2013-11-28 116 views
0

我已經搜索了網絡和一段時間,但無法找到一個合適的解決方案。正則表達式的一切,但

我需要一個正則表達式來匹配除了字母字符和連字符以外的所有東西。

比如我有一個字符串:De'Carte-Es Dega (Kay)

我想結果是這樣的:DeCarte-EsDegaKay(由撇號,空間和圓括號)

這只是一個例子,我只是想知道什麼是「除了...之外的一切」的正則表達式語法

+8

真的嗎?你在網上搜索並找不到這個?也許你應該再次谷歌,然後點擊頂部命中,這可能是http://www.regular-expressions.info,然後閱讀http://www.regular-expressions.info/refcharclass.html = ) –

+6

對不起,也許我不能正確地說出問題。希望我沒有毀了你的一天。 – YemSalat

回答

6
[^\w+-] 

會做的伎倆也。

4

這個怎麼樣?該^意思是「不」

/[^A-Za-z-]/ 
3

你正在尋找一個否定的字符集[^xyz]

//note the global match & ignore case flags: 
"De'Carte-Es Dega (Kay)".replace(/[^A-Z\-]/gi, ''); 
> "DeCarte-EsDegaKay" 
3

[...]只是想知道什麼是「一切正則表達式語法但是......」

一個否定的字符類:

/[^a-z]+/ everything but lowercase letters 

逆正則表達式的元字符:

/\S+/ everything but space characters 
/\D+/ everything but numbers 
1

這個怎麼樣?

var str = "De'Carte-Es Dega (Kay)"; 
var res = str.replace(new RegExp("[^A-Za-z-]","gm"),""); 
console.log(res); 
相關問題