问题描述
我只想传递这样的字符串:
abc*
123*
abc 123*
abc-123abc*
我不想传递这样的字符串:
- abc**
- abc*123
- *abc
星号必须在最后并且只能一次。
使用诸如\*
之类的正则表达式,我得到所有星号,但我不知道如何指定。我的正则表达式不太好。
解决方法
您可以使用
^[^*]*\*$
请注意,它还将与*
字符串匹配。如果必须至少有两个字符,请用[^*]*
替换[^*]+
部分,以匹配最后一个*
之前的*
以外的一个或多个字符。
请参见regex demo。详细信息:
-
^
-字符串的开头 -
[^*]*
-除*
以外的零个或多个字符,尽可能多(贪婪地) -
\*
-一个*
字符 -
$
-在字符串的末尾。