正则表达式:防止字符串以特殊字符结尾

时间:2018-09-27 13:47:47

标签: javascript regex rxjs angular-reactive-forms

我正在 Angular 应用中使用反应性表单验证 n。

我有一个表单验证条件,要求我的字符串不以结尾 -'

我已经尝试过了,但是似乎不起作用:

Validators.pattern('.*(?<!\-\')$')

建议?

1 个答案:

答案 0 :(得分:0)

(?<!\-\')模式是一个negative lookbehind,它与没有立即在-'子字符串前面的位置匹配,而您只想在存在{{1 }} 最后一个-

您可以使用以下使用 regex文字表示法的解决方案,这样您就不必编写模式来匹配整个输入:

'

或者,如果字符串可以为空,

Validators.pattern(/[^-']$/)

Validators.pattern(/(?:^|[^-'])$/) 模式匹配字符串((?:^|[^-'])$的开头或任何字符,但匹配^-(在negated character class的帮助下) ,')和[^-']声明字符串的结尾。