如何解决正则表达式只允许一次,最后一次允许星号*
我只想传递这样的字符串:
abc*
123*
abc 123*
abc-123abc*
我不想传递这样的字符串:
- abc**
- abc*123
- *abc
星号必须在最后并且只能一次。
使用诸如\*
之类的正则表达式,我得到所有星号,但我不知道如何指定。我的正则表达式不太好。
解决方法
您可以使用
^[^*]*\*$
请注意,它还将与*
字符串匹配。如果必须至少有两个字符,请用[^*]*
替换[^*]+
部分,以匹配最后一个*
之前的*
以外的一个或多个字符。
请参见regex demo。详细信息:
-
^
-字符串的开头 -
[^*]*
-除*
以外的零个或多个字符,尽可能多(贪婪地) -
\*
-一个*
字符 -
$
-在字符串的末尾。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。