正则表达式匹配以数字结尾的字符串。

9
正则表达式用于匹配以数字结尾的字符串,例如:
"c1234" - match
"c12" - match
"c" - no match

尝试了这个方法,但它并没有起作用。
(?|c(?|[0-9]*$))

再次感谢您,

起始字符串也需要具体说明。


1
你使用的是哪种编程语言? - Maroun
我正在使用 PHP preg_match。 - user2217084
5个回答

17

只需使用

\d$

检查字符串是否以数字结尾

如果您希望您的字符串以字母"c"开头,后跟一些数字,请使用以下代码

c\d+$

@u 什么?你是如何测试的? - Denys Séguret
它适用于以数字结尾的任何字符串。你试过了吗? - Toto
正则表达式 c\d$ - user2217084
起始字符串也需要具体明确。 - user2217084
@user2217084 注意 d 后面的 + - TiMESPLiNTER

5
你可以使用这个正则表达式模式。
^c[0-9]+$

这是关于 PHP 而不是 Java。 - TiMESPLiNTER
抱歉,我一开始忘记看评论了,只看了问题。我只想为提问者找到正确的模式。对此感到抱歉。 - Nyein Mon Soe

4
为了匹配以数字结尾的任何字符串,请使用:[\s\S]*\d$
if (preg_match('/[\s\S]*\d$/', $value)) {
   #match
} else {
  #no match
}

0

这是匹配 c;,:.?!$+0 的内容。 - Toto

0

动态方式是:

import re
word_list = ["c1234", "c12" ,"c"]
for word in word_list:
    m = re.search(r'.*\d+',word)
    if m is not None:
        print(m.group(),"-match")
    else:
        print(word[-1], "- nomatch")

结果:

c1234 -match
c12 -match
c - nomatch

这是一个关于 PHP 的问题,不是 Python。 - Toto
抱歉,由于问题中没有提到,我给出了自己的建议 :) - PemaGrg
提到了,看一下标签。 - Toto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接