Jquery 正则表达式,用于在开始时不允许空格,并允许在中间使用一些特殊字符

Jquery 正则表达式,用于在开始时不允许空格,并允许在中间使用一些特殊字符,jquery,regex,Jquery,Regex,目前我有这个 ^[^a-zA-Z0-9\\-\\s]+$ 表达式,但它允许特殊字符。我只想让这些[-,$%]字符在中间。您可以使用 $('input')。关于('input',函数(i,v){ $(this.css('color',/^(?)(^[-,$%].*)(.[-,$%]$))[^a-zA-Z0-9\-\s]+$/.test(this.value)?'green':'red'); }); 这将不允许空格,也允许提及特殊字符 ^[A-Za-z0-9_@./#&+-\[\]$%]

目前我有这个

^[^a-zA-Z0-9\\-\\s]+$
表达式,但它允许特殊字符。我只想让这些
[-,$%]
字符在中间。

您可以使用

$('input')。关于('input',函数(i,v){
$(this.css('color',/^(?)(^[-,$%].*)(.[-,$%]$))[^a-zA-Z0-9\-\s]+$/.test(this.value)?'green':'red');
});

这将不允许空格,也允许提及特殊字符

^[A-Za-z0-9_@./#&+-\[\]$%]*$
允许介于两者之间,但不允许在开始时

^[^-\s][a-zA-Z0-9_\s-_@./#&+-\[\]$%]+$

请尝试使用Try
^[a-zA-Z0-9]+(?:[-,$%][a-zA-Z0-9]+)*$
@Ganesh请添加有效和无效字符串/^[^-\S][a-zA-Z0-9\uS-./&[]$%]+$/它正在工作,但允许所有特殊字符在中间。那么现在的实际问题是什么?我是说应该允许在哪里?如果您为引用字符串提供一个有效字符串和一个无效字符串,则可以。开始时不允许使用空格,并且只有提到的特殊字符才允许使用中间的空格。您是否尝试过此^[^-\s][a-zA-Z0-9_\s-_@./#和+-[]$%+$?共享一些有效的n无效字符串进行比较,以便我可以运行测试用例感谢您的响应…测试用例为1。文本框不应允许空白作为开始。.2.不应允许除[-,$%]这些特殊字符以外的其他字符。3.应允许中间空白。