2011-11-10 72 views
1

我想查找共享以下模式的字符串:正则表达式匹配此类字符串

第一个字符是+,最后一个字符是空格。这两个字符之间可以有多个字符。他们可以是一个数字或一个数字或字母,或任何其他字符,如*,&等,但它们不可能空间。换句话说,这个字符串只有一个空格,并且在最后位置。

如何表示使用正则表达式这种模式?

回答

5

^字符串开始处匹配,而$结束。你可以用[]字符类,只有东西,在类匹配,并且^之初使它不能在类匹配任何东西,所以[^ ]的意思是“除了空间什么”。因此,完全匹配是:

^\+[^ ]* $ 
+0

谢谢,但我怎样才能确保最后一个字符是空格? – user288609

+0

@ user288609它包括在内,这就是为什么有了'$'之前的空间。如果你想要最后一个字符是'x',它会是'^ \ + [^] * x $'''''''''''' –

+0

会说相对相同的事情/^\ + [^ \ s] + \ s $/ –

0

您可以尝试正则表达式

\+[^ ]+ 

有在上述正则表达式的后面加上一个空格。

See it