示例代码:
test = "123knh8y78hah099ajs980"
test.scan(/\d+\Z/)
结果,我应该得到:
=> ["980"]
这是对的。但是如果在文本的末尾添加“\ n”,则regexp返回 结果不正确:
test = "123knh8y78hah099ajs980\n"
test.scan(/\d+\Z/)
=> ["980"]
没有任何改变,但数字不是文本的结尾。在文本符号“\ n”的末尾。
热门创建reqular表达式来解决这个问题吗?
答案 0 :(得分:2)
如果您不需要在字符串末尾或最终\Z
之前匹配\z
,则需要将980
替换为\n
。 \Z
)。
\Z
- 匹配字符串的结尾。 如果字符串以换行符结尾,则在换行符之前只匹配
\z
- 匹配字符串的结尾