Javascript Regex允许一切,除了以空格开头

Javascript Regex允许一切,除了以空格开头,javascript,angularjs,Javascript,Angularjs,我有一个文本输入,除了以空格开头外,应该允许所有内容(字母、数字、特殊字符)。非常感谢您的帮助。您可以尝试使用此正则表达式: ^\S+$ <input type="text" ng-model="value" ng-trim="false" ng-pattern="/^[^\s]+/"> 此外,您还可以尝试检查在这种情况下,哪一个是更好的选择 trim()方法删除字符串两端的空白 我假设您当前正在使用ng模式指令。将ng trim设置为false,以便计算ng模型的未修剪值。n

我有一个文本输入,除了以空格开头外,应该允许所有内容(字母、数字、特殊字符)。非常感谢您的帮助。

您可以尝试使用此正则表达式:

^\S+$

<input type="text" ng-model="value" ng-trim="false" ng-pattern="/^[^\s]+/">
此外,您还可以尝试检查在这种情况下,哪一个是更好的选择

trim()方法删除字符串两端的空白


我假设您当前正在使用
ng模式
指令。将
ng trim
设置为false,以便计算
ng模型的未修剪值。ngTrim文件可在指令中找到

尝试使用以下正则表达式:
/^[^\s]+/
,并使用
ng模式
指令

<input type="text" ng-model="value" ng-trim="false" ng-pattern="/^[^\s]+/">


/^\s/
将与之匹配。您不只是修剪空间的原因是什么?您是否在文本
输入中使用了
ng model
?是的,我在输入中使用了ng model。我不必删去空格。用户仍然可以输入一个空白,并且应该被检测为脏的,这应该会触发输入颜色的更改。我尝试使用这个正则表达式,但当传递第二个输入字符时它会触发。当第一个输入被检测为空白时,它应该这样做。@Maverick2007:-您是否试图限制用户输入空白?否,用户可以输入空白,但验证将更改输入的颜色,以向用户显示他不能以空格开头。@Maverick2007:-您可以尝试此正则表达式:-
/^\S+$/
此正则表达式也不会产生所需的结果。例如,“Hello World”应该可以,但“Hello World”应该无效。