正则表达式允许有限的特殊字符强制使用一个字母表

Regex to allow limited special chars with one alphabet compulsory

在这里,我至少将这个正则表达式用于一个字母表,其余的可以是任何其他字母。

var regexItem = new Regex("[a-zA-Z]+");

现在,在此我只想允许一组有限的特殊字符: ( ) ! + * _ - , ' " . ?

我正在尝试:

var regexItem = new Regex("[a-zA-Z0-9()!+*_-,'\".?]");

但它现在可以正常工作了。

更新:我需要正则表达式至少在字母和上面提到的一组有限的特殊字符上,数字等将不受限制。

更新 2

有效示例: 啊啊 aaa13 aa!12 as()!(所有给定的字符)

无效: 啊啊@ @123 123 aaa123%#^

谢谢

使用这个正则表达式:

^(?=.*[A-Za-z])[\w\(\)\!\+\*\-\,\'\"\.\?]*$

我想这就是你的意思,但是你的问题不是很清楚。它将确保至少有一个字母使用 Positive Lookahead ((?=.*[A-Za-z]))。然后它将 select 允许的字符(字母、数字和您指定的所有特殊字符)0 次或更多次

Live Demo on Regex101