perl regex查找任意数字为5的倍数

use*_*094 4 regex perl

Perl正则表达式可以找到5的倍数.

我尝试使用,=~ /[5]+/但它只找到包含5但不是5的倍数的数字.

并且还要查找长度为5的倍数的字符串.

Ste*_*roz 7

5的倍数的数字或者以5或0结尾.

尝试使用/^-?\d*[05]$/,这意味着:

  • ^ 字符串的开头(saflknfvs34535不起作用).
  • -? 减号与否(如果您只想要正数,请不要这样做).
  • \d* 数字,任何数字.
  • [05] 0或5.
  • $ 字符串结尾(324655sefgsfgsfg不会工作).


ste*_*ema 2

我会回答你的第二个问题:并且还要找到长度为5的倍数的字符串。

这比数字部分(已回答)更适合正则表达式,只需将 5 个字符分组并匹配它们的倍数

^(?:.{5})*$
Run Code Online (Sandbox Code Playgroud)

在 Regexr 上查看这里

^$匹配字符串的开头和结尾。

.{5}匹配 5 个字符(不使用修饰符时换行符除外s

(?:.{5})*重复组的内部部分 0 次或多次 ==> 这也将匹配空字符串!如果您不希望这样并且仅从长度至少为 5 的字符串开始,请使用+量词表示 1 或更多:^(?:.{5})+$